SELECT
CONCAT( 'UPDATE ', table_name, ' SET flag = 0;' AS `准备要执行的sql`
FROM
information_schematables
WHERE
table_schema = 'database 的名字';
查询完毕以后,复制出查询结果, 粘贴一下, 执行。
在ACCESS中打开某个数据库
单击菜单 文件-获取外部数据-导入,在对话框中选择要用的EXCEL文件
按照向导提示执行就行了,可以放在新表中,也可以放在已有的表中。
但是要注意,最好是在EXCEL中为使用的数据作个命名区域,还有EXCEL中的数据一定要规规矩矩,第一行是列标题,下面各行是数据,标题和数据不要跨列,不要有合并的单元格,否则可能不行。
不过我是完全安装的,我不知道你的错误提示是否和这有关
原因:
有几个主要的错误原因:
这个错误发生在当你的程序试图执行更新数据库或其它类似 *** 作时。这是因为
ADO由于以下的几个原因而不能够写数据库造成的。
1。最普遍的原因是匿名用户帐号(IUSR_MACHINE)对该数据库文件没有写权限。
要解决这个问题,在管理器中调整数据库文件的属性,让匿名用户有正确的权限。
当使用ACCESS数据库时,不仅要给文件写的权限,还要给该目录写 的权限,因为
Jet需要在该目录建立一个ldb文件。
2。第二个原因是数据库没有使用正确的模式打开。应该使用下面的方法打开。
SQL = "UPDATE Products Set UnitPrice = 2;"
Set Conn = ServerCreateObject("ADODBConnection")
ConnMode = 3 '3 = adModeReadWrite
ConnOpen "myDSN"
ConnExecute(SQL)
ConnClose
注意默认的Mode是设置0(adModeUnknown),它是允许更新的。
3。还有可能是在ODBC管理器中将该DSN的只读选项选中。
4。你是在同时更新两个表中的字段,也会出现这个错误信息,解决办法是分开来更新
这两个表中各自字段。
5。当你使用了一个从低版本中(如ACCESS20,ACCESS70)载入到高版本(ACCESS 2000)
中的查询时,在执行这个查询是会出现该错误。
意味着表的数据,从别的数据库过来的。
可以理解为 链接表 就是一个 “快捷方式”
针对链接表, 可以 SELECT / INSERT / DELETE / UPDATE 数据
对链接表 INSERT / DELETE / UPDATE 而对数据所做的修改,其实都是修改那个“被连接”的数据库的数据。
因为链接表自身不包含数据。
对链接表不能修改表的结构,原因在于,链接表只是一个“快捷方式”,要修改表结构,只能先去 “被链接”的数据库那里,修改表结构,然后,重新建立 链接表。
某些情况下,链接表无法插入数据,原因是 “被链接”的数据库的那张表,没有“主键”。 需要在链接表这里定义“主键”。 然后应该就能执行 INSERT *** 作了。
1、 创建数据
如果不往数据库里面添加任何的表,这个数据库等于没有建立,不会在硬盘上产生任何文件,如果数据库已经存在,则会打开这个数据库。
2、 如何通过sqlite3dll与sqlite3def生成sqlite3lib文件
LIB /DEF:sqlite3def /machine:IX86
3、 sqlite3_open打开一个数据库时,如果数据库不存在就会新生成一个数据库文件。如果接着执行其他查询语句就会失败,比如sqlite3_prepare,编程中出现明明指定了数据库而且里面也有数据,为什么查询失败了,主要是数据库名路径不对引起的。一般的做法是先检查数据库文件是否存在,如果存在就使用sqlite3_open打开数据库;否则创建一个新的数据库。
4、 如何建立自动增长字段
声明为INTEGER PRIMARY KEY的列将会自动增长。
5、SQLite3支持何种数据类型?
NULL
INTEGER
REAL
TEXT
BLOB
但实际上,sqlite3也接受如下的数据类型:
smallint 16位元的整数。
interger 32位元的整数。
decimal(p,s) p精确值和s大小的十进位整数,精确值p是指全部有几个数(digits)大小值,s是指小数点後有几位数。如果没有特别指定,则系统会设为p=5; s=0。
float 32位元的实数。
double 64位元的实数。
char(n) n长度的字串,n不能超过254。
varchar(n)长度不固定且其最大长度为n的字串,n不能超过4000。
graphic(n)和char(n)一样,不过其单位是两个字元double-bytes,n不能超过127。这个形态是为了支援两个字元长度的字体,例如中文字。
vargraphic(n)可变长度且其最大长度为n的双字元字串,n不能超过2000。
date包含了年份、月份、日期。
time包含了小时、分钟、秒。
timestamp包含了年、月、日、时、分、秒、千分之一秒。
6、SQLite允许向一个integer型字段中插入字符串
这是一个特性,而不是一个bug。SQLite不强制数据类型约束。任何数据都可以插入任何列。你可以向一个整型列中插入任意长度的字符串,向布尔型列中插入浮点数,或者向字符型列中插入日期型值。在CREATE TABLE中所指定的数据类型不会限制在该列中插入任何数据。任何列均可接受任意长度的字符串(只有一种情况除外:标志为INTEGER PRIMARY KEY的列只能存储64位整数,当向这种列中插数据除整数以外的数据时,将会产生错误。
方案一:
碰到报错数据库附加是只读,一般原因是因为使用sa账户登录的,只要改为Windows身份验证,再附加数据库即可搞定。
方案二:
使用sa登录SQL Server2008附加数据库,附加之后数据库为只读的,然后点数据库-->“属性”-->“选项”-->“状态”,发现“数据库为只读”这一项为True,改为false即可。
以上就是关于如何设置mysql 指定数据库为只读全部的内容,包括:如何设置mysql 指定数据库为只读、数据库建立宏只读数据模式打开表、为什么数据库只能读不能写等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)