我正在尝试使用codeigniter和MS-SQL。我必须使用ci_sessions表自动将会话存储在mssql服务器中。 codeigniter在用户指南中提供了ci_sessions表sql,如下所示:
CREATE TABLE IF NOT EXISTS `ci_sessions` (
session_id varchar(40) DEFAULT '0' NOT NULL,
ip_address varchar(16) DEFAULT '0' NOT NULL,
user_agent varchar(120) NOT NULL,
last_activity int(10) unsigned DEFAULT 0 NOT NULL,
user_data text NOT NULL,
PRIMARY KEY (session_id),
KEY `last_activity_idx` (`last_activity`)
);
。在这里,我必须在MS SQL Server中创建相同的表。什么可以是MS SQL SERVER的相应sql以及下面的captcha sql表:
CREATE TABLE captcha (
captcha_id bigint(13) unsigned NOT NULL auto_increment,
captcha_time int(10) unsigned NOT NULL,
ip_address varchar(16) default '0' NOT NULL,
word varchar(20) NOT NULL,
PRIMARY KEY `captcha_id` (`captcha_id`),
KEY `word` (`word`)
);
如何使用sql查询在MS SQL SERVER中创建上述mysql查询的相同表
答案 0 :(得分:3)
这是第一个表的示例 -
CREATE TABLE dbo.ci_sessions (
session_id varchar(40) DEFAULT '0' NOT NULL,
ip_address varchar(16) DEFAULT '0' NOT NULL,
user_agent varchar(120) NOT NULL,
last_activity int DEFAULT 0 NOT NULL,
user_data varchar(max) NOT NULL, -- use varchar(max) instead of MySQL TEXT data type
PRIMARY KEY (session_id)
)
GO
-- Simalate MySQL 'UNSIGNED' field option
ALTER TABLE dbo.ci_sessions ADD CONSTRAINT last_activity_unsigned
CHECK (last_activity >= 0)
GO
CREATE INDEX last_activity_idx
ON dbo.ci_sessions (last_activity)
使用您的架构更改'dbo'架构。
查看这些参考文献 - CHECK Constraints,Data Types。