Access 操作学习记录
1.创建 Access 数据库,并关闭其连接
Access 操作的两个引用:
1) Microsoft ActiveX Data Objects 2.8 Library
2) Microsoft ADO Ext. 2.8 for DDL and Security
/// <summary>
/// 创建数据库并返回连接字符串
/// </summary>
/// <param name="dbName">路径+文件名</param>
/// <returns></returns>
public static bool CreateAccess(string dbName)
{
try
{
string databaseConn;
//dbName = @"d:\newAccess.mdb";
databaseConn = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + dbName + ";";
if (File.Exists(dbName)) return false;
// 创建数据库
ADOX.CatalogClass accessCatalog = new CatalogClass();
accessCatalog.Create(databaseConn);
#region
//// 创建一个表
//ADOX.TableClass table = new ADOX.TableClass();
//table.ParentCatalog = accessCatalog;
//table.Name = "MyTable";
//// 创建一个自动增长字段
//ADOX.ColumnClass col = new ADOX.ColumnClass();
//col.ParentCatalog = accessCatalog;
//col.Type = ADOX.DataTypeEnum.adInteger;//设置字段类型
//col.Name = "ID";
//col.Properties["jet OLEDB:Allow Zero Length"].Value = false;
//col.Properties["AutoIncrement"].Value = true;
//table.Columns.Append(col,ADOX.DataTypeEnum.adInteger,0);
//// 添加表
//accessCatalog.Tables.Append(table);
#endregion
/*
* 关闭数据库连接,必须通过 ADODB 来实现,否则创建的数据库无法删除
*/
ADODB.Connection connection = accessCatalog.ActiveConnection as ADODB.Connection;
if (connection != null)
{
相关文档:
原因:IIS没有注册
解决办法:
在CMD中进入目录C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727,运行aspnet_regiis
1、aspnet_regiis -ga administrator(administrator为当前用户)
2、aspnet_regiis -i (注册IIS)
3、iisreset /noforce (重启IIS)
操作详细:
C:\Documents and Settings\Administrator>cd ......
mysql 明明已经装好了,但是无法访问。链接的时候 总是说
Access Denied.
解决方法:
用mysqld --skip-grant-table启动mysql
然后在mysql库中执行这个
INSERT INTO user VALUES ('localhost', 'root', PASSWORD('some_pass'), 'Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y', 'Y', ......
文件头用了
<%@Language="VBScript" CodePage="65001"%>
文件本身已经是Utf-8的编码了
提交过到Access库中怎么都是 “产品介绍 ”这样的编码
一步步分析,不存库直接输出,也是这样的编码。想来跟Access无关了。
相于迷惑,后来重新建一个表单元,提交 ......
问题:目前还没有64位的Jet oledb provider
(不知以后有否),在64位系统上调用Jet oledb provider时会遇到如下错误:
"The
'Microsoft.jet.OLEDB.4.0' provider is not registered on the local machine.
"
解决:32位的Jet oledb provider是存在的,那么可以利用IIS的32 Mode特性,将web程序运行在32位模式 ......