表test中有一字段keyid int 自增長類型
MySQL:
在insert & update 的語句中
insert into test(keyid)values(100);
update test set keyid = 101;
上述語句可以正常執行!
MSSQL:
insert into test(keyid)values(100);
update test set keyid = 101;
......
上述情況就會出錯! 異常的信息大概意思是:在insert & update 語句中不能用到keyid(自動增長字段)!
Cannot insert explicit value for identity
column in table 'test' when IDENTITY_INSERT
is set to OFF.
........
第一次補充:
在MSSQL中產生上述錯誤。經我在網上一番搜掠之後! 是因爲我沒有把IDENTITY_INSERT 設為 ON .
引用
语法
SET IDENTITY_INSERT [ database.[ owner.] ] { table } { ON | OFF }
参数
database
是指定的表所驻留的数据库名称。
owner
是表所有者的名称。
table
是含有标识列的表名。
不過可惜的是.我把IDENTITY_INSERT 設為 ON了,但是在insert數據時還是報同樣的錯誤!天啊!HELP ME~ME~ME!
第二次補充:
如果要把IDENTITY_INSERT 設為 ON生效! 就要在insert & update語句前執行!
在MSDN中找到:
引用
不論何時,工作階段中只能有一份資料表將
IDENTITY_INSERT 屬性設為 ON。如果已有資料表的這個屬性設為 ON,又針對另一份資
料表發出 SET IDENTITY_INSERT ON 陳述式,SQL Server 2005 會傳回一則錯誤訊
息,指出 SET IDENTITY_INSERT 已設為 ON,且會報告設為 ON 所針對的資料表。
如果輸入的值大於資料表目前的識別值,SQL Server 會自動利用新插入的值來作為目前的識別值。
SET IDENTITY_INSERT 的設定是在執行階段進行設定,而不是在剖析階段進行設定。
當我打字打到這裡的時候.我突然想起我所說的已經偏離了我一開始所要講的.不過,無關係!我的BLOG,我話事!
在MSSQL中所謂的顯式:
insert into test(keyid)values(100);
insert into test(keyid)values(0);
.....
當keyid最大值是99時!平且沒有一條記錄keyid == 0;
那麽這兩條語句將會成功插入!其中keyid == 100 & keyid == 0
OK!我們將環境轉去MySQL:
insert into test(keyid)values(100);
insert into test(keyid)values(0);
.....
當keyid最大值是99時!平且沒有一條記錄keyid == 0;
那麽這兩條語句將會成功插入!但是結果與MSSQL有所不同!
執行完第一條語句時:將產生一條keyid == 100的紀錄.
執行完第二條語句時:產生了一條keyid ==
101的紀錄.
分享到:
- 2006-09-12 14:51
- 浏览 3043
- 评论(3)
- 论坛回复 / 浏览 (3 / 6303)
- 查看更多
相关推荐
1. **数据映射**:程序会自动识别MSSQL中的表结构、字段类型,并将其映射到MySQL兼容的格式,确保数据在转换过程中不失真。 2. **数据迁移**:将MSSQL数据库中的数据记录转移到MySQL数据库,这可能涉及批量导入、...
在IT行业中,数据库迁移是一项常见的任务,特别是在不同的数据库系统之间,如从Microsoft SQL Server (MSSQL) 迁移到MySQL。本案例中,我们探讨的是如何利用`LOAD DATA LOCAL INFILE`语句将MSSQL的数据高效地导入到...
在Linux环境下同时支持并安装Microsoft SQL Server(MSSQL)和MySQL数据库系统,涉及到一系列复杂的配置与步骤。本文将详细解析这一过程中的关键知识点,帮助读者理解如何在Linux上搭建这两种数据库环境,并确保它们...
MSSQL对比学习mysql心得(三)查看字段长度.doc
虽然是demo版本,但可以转换一些字段不是很长的数据库表。 MySQL Migration Toolkit v2.3 数据库转换工具 MySQL Migration Toolkit 可以将任何数据源转换成mysql的数据,也可以将mysql的数据转换成其它类型的数据 ...
4. **数据类型匹配**:确保Excel中的数据类型与MySQL表中的字段类型匹配,否则可能会出现导入错误。 **Excel导入MSSQL** 1. **准备数据**:同上,确保Excel数据的格式符合MSSQL的要求。 2. **连接MSSQL**:安装...
1. **数据库结构转换**:该工具能够自动检测并转换MSSQL数据库中的表结构,包括表名、字段名、数据类型、主键、外键、索引等信息,确保MySQL数据库中的结构与原MSSQL保持一致。 2. **数据迁移**:除了结构转换,...
在IT行业中,数据库迁移是一项常见的任务,特别是在不同的数据库系统之间,比如从Microsoft SQL Server(MSSQL)到MySQL。"MSSQL to MySql 5.3"的主题涉及到的就是这样一个过程,即将MSSQL中的表结构和数据转换为...
数据库导入软件是用于在不同数据库系统之间迁移数据的工具,本例中提到的是将数据从Microsoft SQL Server(简称mssql)导出并导入到MySQL数据库。这个过程涉及到多个技术环节和概念,包括数据提取、转换和加载(ETL...
3. **设计数据库结构**:在MySQL或MSSQL中创建与Access数据库匹配的表结构,包括字段名、数据类型和索引。 4. **导入数据**:使用MySQL或MSSQL的命令行工具(如`LOAD DATA INFILE`或`bcp`)或图形界面工具(如MySQL ...
这个主题的压缩包文件包含了一系列与SQL注入攻击相关的源代码,主要针对Microsoft SQL Server (MSSQL) 和 MySQL数据库系统。下面我们将深入探讨这些知识点。 首先,`mssql`和`mysql`是两种广泛使用的数据库管理系统...
SQL注入是最常见的一种攻击方式,攻击者通过在输入字段中插入恶意的SQL代码,绕过验证并获取未授权的访问权限。例如,文件名中的“mssql加mysql拖库脚本.php”很可能包含了可以执行SQL注入的代码,目的是从MySQL和...
标题中的“mysql sql数据转换dbconvert_mssql_mysql”指的是一个数据迁移工具,它主要用于将Microsoft SQL Server(MSSQL)的数据转换并迁移到MySQL数据库中。这个过程在数据库管理中非常常见,特别是在需要更换...
随着查询条数的增加,MySQL的查询时间显著增长,而MsSql的查询时间相对稳定。例如,当查询条数为5000时,MySQL用时约3秒,而MsSql仅需不到1秒。这种差距随着查询范围扩大而加大,表明MsSql在处理大型数据集和复杂...
5. **权限和安全性**:MSSQL和MYSQL的权限管理系统不同,迁移时要考虑到用户角色、权限设置,确保在新的MYSQL环境中能够正常访问数据。 6. **兼容性问题**:一些特定的MSSQL特性在MYSQL中可能不存在,例如,MSSQL的...
标题中的“全国交全面的省市县地区名称mysql和mssql语句.zip”表明这是一个包含数据库查询语句的压缩包,主要涉及的是中国的地理区域数据,包括省、市、县(区)的名称。这些语句可能用于在MySQL和Microsoft SQL ...
标题中的“mssql to mysql 本人亲测可用 下载即用免安装”表明这是一个转换工具,用于将数据从Microsoft SQL Server (MSSQL)迁移至MySQL数据库。这个工具的特点是用户可以直接下载并使用,无需进行复杂的安装过程,...
综上所述,本文档主要介绍了在Windows 2003操作系统下配置基于PHP、Apache、MySQL(以及MSSQL,尽管文档中没有详细介绍MSSQL的配置)的多功能服务器的过程。从软件版本的选择到具体的安装步骤,再到遇到问题时的解决...
在MySQL中,你可以使用CREATE TABLE语句来创建包含省市县地名的表结构,字段可能包括"省份"、"城市"、"区县"等。例如: ```sql CREATE TABLE `province_city_county` ( `id` INT AUTO_INCREMENT PRIMARY KEY, `...