win7 64位,在安装了myodbc-3.51后,在系统的“管理工具”-“数据源(ODBC)”,配置时出现错误:
解决办法:
使用syswow64目录下的odbcad32.exe进行配置,管理工具目录下的数据源配置,指向的是system32目录下的odbcad32.exe。
修改或者创新创建一个快捷方式即可。
要把access的数据导入的mysql的方法,要么用专门的工具,如db2mysql,或者,就是连接两者,然后用sql语句操作。
ms access 连接mysql数据库的方法:
1.安装myodbc,3.51即可
2.在access中,使用外部链接表,把mysql数据表连接到access中,这样,mysql的表就跟access本身的表格一样处理。
中间,就是中文乱码的问题,
网上的解决办法都是:MYSQL ODBC 乱码的解决方法
大概就是在mysql的odbc连接选项中,在数据源配置项 Initial Statement 中填入 SET CHARACTER SET GBK
这种方法,显示的时候没有问题,中文能正常显示,但是,当你插入中文数据到mysql中时,照样是乱码。
其实,在代码中,访问mysql时,处理这种情况,就是在执行sql语句前,执行 set names GB2312
设置连接过程中的字符集。
但是,直接在access的sql模式中执行的话,会显示因为不是select ,update等sql语句而失败。
解决办法:就是把之前的陪着数据源的选项中的set character set,直接改成 set names GB2312,即可。
用vs2010的reportviewer做了一个简单的报表展示界面,在vs的调试状态下,显示都没有问题,但是用vs的发布网站发布到IIS6后,打开出现
- 处理报表时出错。
- 调用的目标发生了异常。
- 用户 ‘XXXXXXXXIWAM_CHINA-63C2C51D6’ 登录失败。
查看了IIS的配置,已经配置好了是使用IUSER_CHINA-63C2C51D6’登录的,很奇怪的是报错的竟然是IWAM_CHINA-63C2C51D6′ 用户。
后查看web.config配置,发现是数据库配置问题。
<add name="acrConnectionString" connectionString="Data Source=127.0.0.1;Initial Catalog=acr;Integrated Security=true;" providerName="System.Data.SqlClient"/>
原来数据库访问是使用Windows的验证,vs由于是当前用户访问,没有问题。
发布到IIS后,IIS内置账户没有访问数据库的权限,所以导致了登录失败的问题。
Connecting to data stores
How do I connect to a MS Access 2000 database?
ADOConnection.ConnectionString := ‘Provider=Microsoft.Jet.OLEDB.4.0;DataSource=C:MyDatabase.mdb;Persist Security Info=False’;
How do I connect to a password protected MS Access 2000 database?
ADOConnection.ConnectionString := ‘Provider=Microsoft.Jet.OLEDB.4.0;Jet OLEDB:Database Password=XXXXXX;DataSource=C:MyDatabase.mdb;Persist Security Info=False’;
What provider should I use for MS Access
For MS Access 97 use Microsoft.Jet.OLEDB.3.51
For MS Access 2000 use Microsoft.Jet.OLEDB.4.0
How do I connect to a dBase database?
ADOConnection.ConnectionString := ‘Provider=Microsoft.Jet.OLEDB.4.0;DataSource=C:MyDatabase.mdb;Extended Properties="dBase 5.0;"’;
How do I connect to a Paradox database?
ADOConnection.ConnectionString := ‘Provider=Microsoft.Jet.OLEDB.4.0;DataSource=C:MyDatabase.mdb;Extended Properties="Paradox 7.X;"’;
How do I connect to a MS Access database on a CD (read only) drive?
ADOConnection.Mode := cmShareExclusive;
经常的,从网站上备份了数据下来,想在本地查看数据,却总是无从下手,因为备份的数据库并不能直接在sql Server中使用。
使用方法:
1.建立一个空的数据库test
2.还原test数据库
选择备份的数据库文件test.bak
这时候,如果直接还原,会提示
标题: Microsoft SQL Server Management Studio
——————————还原 对于 服务器“NEWMAPSERVER”失败。 (Microsoft.SqlServer.Smo)
——————————
其他信息:System.Data.SqlClient.SqlError: 备份集中的数据库备份与现有的 ‘test’ 数据库不同。 (Microsoft.SqlServer.Smo)
有关帮助信息,请单击: http://go.microsoft.com/fwlink?ProdName=Microsoft+SQL+Server&ProdVer=9.00.3042.00&LinkId=20476
——————————
解决办法:选中还原选项“覆盖现有数据库”
再还原,就没有问题了。
3.查看还原完的数据库test,就可以看到备份下来的数据了。
把null的结果转换为0
isnull(afield,0)
如果afield的结果是null,就返回0,当然,可以把0转换为其他字段的值,如bfield
isnull(afield,bfield)
这在bfield在没有填写的时候,默认为afield的值,这样的情况下,最为有用
——————————————————————
数据精度:
用round
ROUND ( numeric_expression, length [ , function ] )
如果要把afield的值,取两位小数,则为
round(afield,2) as afield
左边是sql语句输入窗,original是正确的语句,右边是结果,submit后,就会显示。