如何创建一个access数据库
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何创建一个access数据库相关的知识,希望对你有一定的参考价值。
创建新数据库文件的方法有很多。主要有两种方法:一、空白数据库,直接结构与数据同时进行输入(如果果建立完成后再修改结构,原内容可能丢失);二、结构和数据分两步进行了操作(推荐);那么第一种方法注意在ACCESS主窗口中区域左上角的"空白数据库"按钮。该按钮和"文件"菜单中的"新建"按钮都可以展现主窗口右侧的"空白数据库"区域。单击二者中的任何一个按钮都可以转换到主窗口,如图右所示。" 空白数据库"区域代替了主窗口中的最近打开的数据库列表。Access数据库创建及操作在"空白数据库"区域的"文件名"框中输入新数据库的名称。默认情况下, Access 会在一个最近使用Access 打开的Windows 文件夹中创建新的数据库文件。如需使用不同的文件夹,可以使用"文件名"右侧的文件夹图标进行浏览并将数据库创建在所需的位置。
Access 为新数据库提供了Dat abasel.accdb 的默认名称。
需确保提供的名称可以识别。在图右中,新的数据库命名为教务信息管理.accdb (扩展名.accdb 为可选项,这是因为在未提供扩展名时, Access 将自动提供扩展名)。创建完新的数据库后, Access 将自动打开该数据库。
图右 在"空白数据库" 区域的"文件名"框中输入新数据库的名称
注意: Access 2007 可以识别所有以前版本的Access 数据库文件. 默认情况下,将使用2007 格式(使用.accdb 扩展名),但是可以指定Access 2000 、2002-2003或者Access 2007 为默认格式.使用"文件"->"Access 选项" ~ "常用",选择"默认文件格式"选项并且选定所需要的格式. 例如,当一个Access 2007 文件大部分内容都在Access 2000 数据库中完成,此时就应该选择2000 格式来保留向后兼容.依然使用Access 2000 的用户将无法打开以_accdb 格式创建的Access 文件. 参考技术A 创建新数据库文件的方法有很多。主要有两种方法:一、空白数据库,直接结构与数据同时进行输入(如果果建立完成后再修改结构,原内容可能丢失);二、结构和数据分两步进行了操作(推荐);那么第一种方法注意在ACCESS主窗口中区域左上角的"空白数据库"按钮。该按钮和"文件"菜单中的"新建"按钮都可以展现主窗口右侧的"空白数据库"区域。单击二者中的任何一个按钮都可以转换到主窗口,如图右所示。" 空白数据库"区域代替了主窗口中的最近打开的数据库列表。Access数据库创建及操作
在"空白数据库"区域的"文件名"框中输入新数据库的名称。默认情况下, Access 会在一个最近使用Access 打开的Windows 文件夹中创建新的数据库文件。如需使用不同的文件夹,可以使用"文件名"右侧的文件夹图标进行浏览并将数据库创建在所需的位置。
Access 为新数据库提供了Dat abasel.accdb 的默认名称。
需确保提供的名称可以识别。在图右中,新的数据库命名为教务信息管理.accdb (扩展名.accdb 为可选项,这是因为在未提供扩展名时, Access 将自动提供扩展名)。创建完新的数据库后, Access 将自动打开该数据库。
图右 在"空白数据库" 区域的"文件名"框中输入新数据库的名称
注意: Access 2007 可以识别所有以前版本的Access 数据库文件. 默认情况下,将使用2007 格式(使用.accdb 扩展名),但是可以指定Access 2000 、2002-2003或者Access 2007 为默认格式.使用"文件"->"Access 选项" ~ "常用",选择"默认文件格式"选项并且选定所需要的格式. 例如,当一个Access 2007 文件大部分内容都在Access 2000 数据库中完成,此时就应该选择2000 格式来保留向后兼容.依然使用Access 2000 的用户将无法打开以_accdb 格式创建的Access 文件. 参考技术B 1、开始--程序--打开Microsoft Office Access 2013
2、菜单逗文件地--逗创建地 --逗空数据库地
3、选择数据库保存的位置及数据库名称,比如testdb;
4、这样我们就创建了一个"testdb"的access数据库!本回答被提问者采纳 参考技术C
打开Office Access软件,就可以直接创建了。如使用代码创建,可以这样,如C#代码
创建数据库和表
//创建Library数据库
catalog.Create("Provider = Microsoft.ACE.OLEDB.12.0;Data Source = .\\\\Data\\\\Student.accdb;Jet OLEDB:Database Password = 123456");
//释放Catalog对Student.accdb的占用
System.Runtime.InteropServices.Marshal.FinalReleaseComObject(catalog.ActiveConnection);
System.Runtime.InteropServices.Marshal.FinalReleaseComObject(catalog);string OleDbConnectionString = "Provider = Microsoft.ACE.OLEDB.12.0;Data Source = .\\\\Data\\\\Student.accdb;Jet OLEDB:Database Password = 123456";
OleDbConnection cnn = new OleDbConnection(OleDbConnectionString);
cnn.Open();
OleDbCommand cmd = new OleDbCommand("create table Info (id char(15) primary key, name char(50))", cnn);
cmd.ExecuteNonQuery();
cmd.Dispose();
cnn.Close();
cnn.Dispose();
下面是是一个完整的ASP.NET代码
using System;using ADOX;
namespace WebPortal
/// <summary>
/// CreateAccessDB 的摘要说明。
/// 对于不同版本的ADO,需要添加不同的引用
/// 请添加引用Microsoft ADO Ext. 2.7 for DDL and Security
/// 请添加引用Microsoft ADO Ext. 2.8 for DDL and Security
/// </summary>
public class CreateAccessDB : System.Web.UI.Page
private void Page_Load(object sender, System.EventArgs e)
//为了方便测试,数据库名字采用比较随机的名字,以防止添加不成功时还需要重新启动IIS来删除数据库。
string dbName = "D://NewMDB"+DateTime.Now.Millisecond.ToString()+".mdb";
ADOX.CatalogClass cat = new ADOX.CatalogClass();
cat.Create("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + dbName +";");
Response.Write("数据库:" + dbName + "已经创建成功!");
ADOX.TableClass tbl = new ADOX.TableClass();
tbl.ParentCatalog = cat;
tbl.Name="MyTable";
//增加一个自动增长的字段
ADOX.ColumnClass col = new ADOX.ColumnClass();
col.ParentCatalog = cat;
col.Type=ADOX.DataTypeEnum.adInteger; // 必须先设置字段类型
col.Name = "id";
col.Properties["Jet OLEDB:Allow Zero Length"].Value= false;
col.Properties["AutoIncrement"].Value= true;
tbl.Columns.Append (col,ADOX.DataTypeEnum.adInteger,0);
//增加一个文本字段
ADOX.ColumnClass col2 = new ADOX.ColumnClass();
col2.ParentCatalog = cat;
col2.Name = "Description";
col2.Properties["Jet OLEDB:Allow Zero Length"].Value= false;
tbl.Columns.Append (col2,ADOX.DataTypeEnum.adVarChar,25);
//设置主键
tbl.Keys.Append("PrimaryKey",ADOX.KeyTypeEnum.adKeyPrimary,"id","","");
cat.Tables.Append (tbl);
Response.Write("<br>数据库表:" + tbl.Name + "已经创建成功!");
tbl=null;
cat = null;
#region Web 窗体设计器生成的代码
override protected void OnInit(EventArgs e)
//
// CODEGEN: 该调用是 ASP.NET Web 窗体设计器所必需的。
//
InitializeComponent();
base.OnInit(e);
/// <summary>
/// 设计器支持所需的方法 - 不要使用代码编辑器修改
/// 此方法的内容。
/// </summary>
private void InitializeComponent()
this.Load += new System.EventHandler(this.Page_Load);
#endregion
如何使用Tweepy创建一个pandas数据框?
在Python 3中,我制作程序以在Twitter中提取帖子和喜欢:
import tweepy
import pandas as pd
consumer_key = ''
consumer_secret = ''
access_token = ''
access_token_secret = ''
auth = tweepy.OAuthHandler(consumer_key, consumer_secret)
auth.set_access_token(access_token, access_token_secret)
api = tweepy.API(auth)
此函数接收配置文件的教学分类(仅适用于数据库组织)和配置文件的名称。它创建一个包含字典的列表,然后返回:
def linhadotempo(posicao, valor):
tela = api.user_timeline(valor)
bolha = []
for status in tela:
dicionario = {"nome": valor, "posicionamento": posicao, "posts_links": status.text, "curtidas": status.favorite_count}
bolha.append(dicionario)
return bolha
Twitter个人资料的名称列表及其教学评级。然后转换成数据帧:
data = {
'nome': ['jeanwyllys_real', 'lucianagenro', 'jairbolsonaro', 'MBLivre'],
'posicionamento': ['esquerda', 'esquerda', 'direita', 'direita']
}
perfis = pd.DataFrame(data, columns=['nome','posicionamento'])
perfis.reset_index()
index nome posicionamento
0 0 jeanwyllys_real esquerda
1 1 lucianagenro esquerda
2 2 jairbolsonaro direita
3 3 MBLivre direita
我创建了一个最终列表,将函数中创建的列表放在一起。我在配置文件的数据框中进行迭代以激活该功能
bolhas = []
for num, row in perfis.iterrows():
bolha = linhadotempo(row['posicionamento'], row['nome'])
bolhas.append(bolha)
我的意图是用这个创建一个最终的数据帧,但它没有成功。我的意图是列“curtidas”,“nome”,“posicionamento”和“posts_links”
bolhas_final = pd.DataFrame(bolhas)
bolhas_final.reset_index()
index 0 1 2 3 4 5 6 7 8 ... 10 11 12 13 14 15 16 17 18 19
0 0 {'nome': 'jeanwyllys_real', 'posicionamento': ... {'nome': 'jeanwyllys_real', 'posicionamento': ... {'nome': 'jeanwyllys_real', 'posicionamento': ... {'nome': 'jeanwyllys_real', 'posicionamento': ... {'nome': 'jeanwyllys_real', 'posicionamento': ... {'nome': 'jeanwyllys_real', 'posicionamento': ... {'nome': 'jeanwyllys_real', 'posicionamento': ... {'nome': 'jeanwyllys_real', 'posicionamento': ... {'nome': 'jeanwyllys_real', 'posicionamento': ... ... {'nome': 'jeanwyllys_real', 'posicionamento': ... {'nome': 'jeanwyllys_real', 'posicionamento': ... {'nome': 'jeanwyllys_real', 'posicionamento': ... {'nome': 'jeanwyllys_real', 'posicionamento': ... {'nome': 'jeanwyllys_real', 'posicionamento': ... {'nome': 'jeanwyllys_real', 'posicionamento': ... {'nome': 'jeanwyllys_real', 'posicionamento': ... {'nome': 'jeanwyllys_real', 'posicionamento': ... {'nome': 'jeanwyllys_real', 'posicionamento': ... {'nome': 'jeanwyllys_real', 'posicionamento': ...
1 1 {'nome': 'lucianagenro', 'posicionamento': 'es... {'nome': 'lucianagenro', 'posicionamento': 'es... {'nome': 'lucianagenro', 'posicionamento': 'es... {'nome': 'lucianagenro', 'posicionamento': 'es... {'nome': 'lucianagenro', 'posicionamento': 'es... {'nome': 'lucianagenro', 'posicionamento': 'es... {'nome': 'lucianagenro', 'posicionamento': 'es... {'nome': 'lucianagenro', 'posicionamento': 'es... {'nome': 'lucianagenro', 'posicionamento': 'es... ... {'nome': 'lucianagenro', 'posicionamento': 'es... {'nome': 'lucianagenro', 'posicionamento': 'es... {'nome': 'lucianagenro', 'posicionamento': 'es... {'nome': 'lucianagenro', 'posicionamento': 'es... {'nome': 'lucianagenro', 'posicionamento': 'es... {'nome': 'lucianagenro', 'posicionamento': 'es... {'nome': 'lucianagenro', 'posicionamento': 'es... {'nome': 'lucianagenro', 'posicionamento': 'es... {'nome': 'lucianagenro', 'posicionamento': 'es... {'nome': 'lucianagenro', 'posicionamento': 'es...
2 2 {'nome': 'jairbolsonaro', 'posicionamento': 'd... {'nome': 'jairbolsonaro', 'posicionamento': 'd... {'nome': 'jairbolsonaro', 'posicionamento': 'd... {'nome': 'jairbolsonaro', 'posicionamento': 'd... {'nome': 'jairbolsonaro', 'posicionamento': 'd... {'nome': 'jairbolsonaro', 'posicionamento': 'd... {'nome': 'jairbolsonaro', 'posicionamento': 'd... {'nome': 'jairbolsonaro', 'posicionamento': 'd... {'nome': 'jairbolsonaro', 'posicionamento': 'd... ... {'nome': 'jairbolsonaro', 'posicionamento': 'd... {'nome': 'jairbolsonaro', 'posicionamento': 'd... {'nome': 'jairbolsonaro', 'posicionamento': 'd... {'nome': 'jairbolsonaro', 'posicionamento': 'd... {'nome': 'jairbolsonaro', 'posicionamento': 'd... {'nome': 'jairbolsonaro', 'posicionamento': 'd... {'nome': 'jairbolsonaro', 'posicionamento': 'd... {'nome': 'jairbolsonaro', 'posicionamento': 'd... {'nome': 'jairbolsonaro', 'posicionamento': 'd... {'nome': 'jairbolsonaro', 'posicionamento': 'd...
3 3 {'nome': 'MBLivre', 'posicionamento': 'direita... {'nome': 'MBLivre', 'posicionamento': 'direita... {'nome': 'MBLivre', 'posicionamento': 'direita... {'nome': 'MBLivre', 'posicionamento': 'direita... {'nome': 'MBLivre', 'posicionamento': 'direita... {'nome': 'MBLivre', 'posicionamento': 'direita... {'nome': 'MBLivre', 'posicionamento': 'direita... {'nome': 'MBLivre', 'posicionamento': 'direita... {'nome': 'MBLivre', 'posicionamento': 'direita... ... {'nome': 'MBLivre', 'posicionamento': 'direita... {'nome': 'MBLivre', 'posicionamento': 'direita... {'nome': 'MBLivre', 'posicionamento': 'direita... {'nome': 'MBLivre', 'posicionamento': 'direita... {'nome': 'MBLivre', 'posicionamento': 'direita... {'nome': 'MBLivre', 'posicionamento': 'direita... {'nome': 'MBLivre', 'posicionamento': 'direita... {'nome': 'MBLivre', 'posicionamento': 'direita... {'nome': 'MBLivre', 'posicionamento': 'direita... {'nome': 'MBLivre', 'posicionamento': 'direita...
通过显示“bolhas”的内容,我相信错误是append在列表中创建了几个列表:
[[{'curtidas': 122,
'nome': 'jeanwyllys_real',
'posicionamento': 'esquerda',
'posts_links': 'A expressão "ideologia de gênero" é uma farsa criada para combater a promoção da igualdade e perpetrar a violência… https:///lWdLANLzc5'},
{'curtidas': 316,
'nome': 'jeanwyllys_real',
'posicionamento': 'esquerda',
'posts_links': 'O termo fantasioso "ideologia de gênero" foi criado por aqueles que falam em "ditadura gay". Quando o ministro ileg… https:///zv2aY31X9p'},
...
[{'curtidas': 378,
'nome': 'lucianagenro',
'posicionamento': 'esquerda',
'posts_links': 'Que coisa mais ridícula o ministro da Educação falando em rede nacional que a nova base curricular "está sendo entr… https:///h6l95GhdWT'},
...
{'curtidas': 500,
'nome': 'MBLivre',
'posicionamento': 'direita',
'posts_links': 'URGENTE: Lula pede 1 milhão de reais em indenização moral a Dallagnol e Justiça nega https://d9vVwRH2IS via @'}]]
有没有正确的方法将创建的列表合并为一个?我想在创建数据帧时保留此结构。
导入我们将要使用的所需库:
import pandas as pd
import numpy as np
import tweepy
import json
提供连接Twitter API的密钥:
consumer_key = '....'
consumer_secret = '....'
access_token = '....'
access_secret = '....'
下一步是创建OAuthHandler实例......
auth = tweepy.OAuthHandler(consumer_key, consumer_secret)
...然后获得对Twitter API的访问权限。
auth.set_access_token(access_token, access_secret)
最后,我们创建了一个API对象,我们将使用它来获取推文:
api = tweepy.API(auth, wait_on_rate_limit=True, wait_on_rate_limit_notify=True)
从FC Barcelona twitter账户中获取最近20条推文:
last_20_tweets_of_FC_Barcelona = api.user_timeline('FCBarcelona'
)
然后在这个代码块中我们隔离了我们下载的每个tweepy状态对象的json部分,并将它们全部添加到列表中....
my_list_of_dicts = []
for each_json_tweet in last_20_tweets_of_FC_Barcelona:
my_list_of_dicts.append(each_json_tweet._json)
...然后我们将此列表写入txt文件:
with open('tweet_json_Barca.txt', 'w') as file:
file.write(json.dumps(my_list_of_dicts, indent=4))
现在我们将从tweet_json.txt文件创建一个DataFrame:
my_demo_list = []
with open('tweet_json_Barca.txt', encoding='utf-8') as json_file:
all_data = json.load(json_file)
for each_dictionary in all_data:
tweet_id = each_dictionary['id']
text = each_dictionary['text']
favorite_count = each_dictionary['favorite_count']
retweet_count = each_dictionary['retweet_count']
created_at = each_dictionary['created_at']
my_demo_list.append({'tweet_id': str(tweet_id),
'text': str(text),
'favorite_count': int(favorite_count),
'retweet_count': int(retweet_count),
'created_at': created_at,
})
#print(my_demo_list)
tweet_json = pd.DataFrame(my_demo_list, columns =
['tweet_id', 'text',
'favorite_count', 'retweet_count',
'created_at'])
以上是关于如何创建一个access数据库的主要内容,如果未能解决你的问题,请参考以下文章