最近在研究derby,可是没有建表的界面工具,下了一个名叫 SQuirreL SQL 的工具,也没有看到建表的选项。无奈之下只有重新尝试写create table 语句了。
http://www.w3school.com.cn/sql/sql_create_table.asp是个不错的网站,在它的协助下终于完成了这个非常麻烦的任务。copy一下:
CREATE TABLE 语句
CREATE TABLE 语句用于创建数据库中的表。
SQL CREATE TABLE 语法
CREATE TABLE 表名称
(
列名称1 数据类型,
列名称2 数据类型,
列名称3 数据类型,
....
)
数据类型(data_type)规定了列可容纳何种数据类型。下面的表格包含了SQL中最常用的数据类型:
数据类型 描述
integer(size)
int(size)
smallint(size)
tinyint(size)
仅容纳整数。在括号内规定数字的最大位数。
decimal(size,d)
numeric(size,d)
容纳带有小数的数字。
"size" 规定数字的最大位数。"d" 规定小数点右侧的最大位数。
char(size) 容纳固定长度的字符串(可容纳字母、数字以及特殊字符)。
在括号中规定字符串的长度。
varchar(size) 容纳可变长度的字符串(可容纳字母、数字以及特殊的字符)。
在括号中规定字符串的最大长度。
date(yyyymmdd) 容纳日期。
SQL CREATE TABLE 实例
本例演示如何创建名为 "Person" 的表。
该表包含 5 个列,列名分别是:"Id_P"、"LastName"、"FirstName"、"Address" 以及 "City":
CREATE TABLE Persons
(
Id_P int,
LastName varchar(255),
FirstName varchar(255),
Address varchar(255),
City varchar(255)
)
Id_P 列的数据类型是 int,包含整数。其余 4 列的数据类型是 varchar,最大长度为 255 个字符。
空的 "Persons" 表类似这样:
Id_P LastName FirstName Address City
可使用 INSERT INTO 语句向空表写入数据。
SQL PRIMARY KEY 约束
PRIMARY KEY 约束唯一标识数据库表中的每条记录。
主键必须包含唯一的值。
主键列不能包含 NULL 值。
每个表应该都一个主键,并且每个表只能有一个主键。
SQL PRIMARY KEY Constraint on CREATE TABLE
下面的 SQL 在 "Persons" 表创建时在 "Id_P" 列创建 PRIMARY KEY 约束:
MySQL:
CREATE TABLE Persons
(
Id_P int NOT NULL,
LastName varchar(255) NOT NULL,
FirstName varchar(255),
Address varchar(255),
City varchar(255),
PRIMARY KEY (Id_P)
)
SQL Server / Oracle / MS Access:
CREATE TABLE Persons
(
Id_P int NOT NULL PRIMARY KEY,
LastName varchar(255) NOT NULL,
FirstName varchar(255),
Address varchar(255),
City varchar(255)
)
如果需要命名 PRIMARY KEY 约束,以及为多个列定义 PRIMARY KEY 约束,请使用下面的 SQL 语法:
MySQL / SQL Server / Oracle / MS Access:
CREATE TABLE Persons
(
Id_P int NOT NULL,
LastName varchar(255) NOT NULL,
FirstName varchar(255),
Address varchar(255),
City varchar(255),
CONSTRAINT uc_PersonID PRIMARY KEY (Id_P,LastName)
)
SQL PRIMARY KEY Constraint on ALTER TABLE
如果在表已存在的情况下为 "Id_P" 列创建 PRIMARY KEY 约束,请使用下面的 SQL:
MySQL / SQL Server / Oracle / MS Access:
ALTER TABLE Persons
ADD PRIMARY KEY (Id_P)
如果需要命名 PRIMARY KEY 约束,以及为多个列定义 PRIMARY KEY 约束,请使用下面的 SQL 语法:
MySQL / SQL Server / Oracle / MS Access:
ALTER TABLE Persons
ADD CONSTRAINT pk_PersonID PRIMARY KEY (Id_P,LastName)
注释:如果您使用 ALTER TABLE 语句添加主键,必须把主键列声明为不包含 NULL 值(在表首次创建时)。
撤销 PRIMARY KEY 约束
如需撤销 PRIMARY KEY 约束,请使用下面的 SQL:
MySQL:
ALTER TABLE Persons
DROP PRIMARY KEY
SQL Server / Oracle / MS Access:
ALTER TABLE Persons
DROP CONSTRAINT pk_PersonID
分享到:
相关推荐
基于Druid的SqlParser模块解析create table语句创建java POJO和DAO类的效率工具
【FlinkSql篇02】FlinkSql之Table操作1
createtable.sql
sql-create-table-to-json 从SQL CREATE TABLE查询创建JSON对象什么? data.sql: CREATE TABLE ` dev_access ` ( ` id_profile ` int ( 10 ) unsigned NOT NULL , ` id_tab ` int ( 10 ) unsigned NOT NULL...
create table instanc.sql
一、创建表结构CREATE TABLE 使用CREATE TABLE语句创建数据库的基本语法格式如下。 CREATE TABLE <表名> ( <列名> <数据类型> [ NULL | NOT NULL ] [ IDENTITY [( seed ,increment ) ] [{<列约束>}] [,…n] ...
sql-protobuf 将SQL CREATE TABLE语句转换为protobuf模式。 使用正则表达式解析SQL被称为“几乎不可能”-但我想我们可以涵盖90%以上的情况。 可能有错误。 如果此命令无法正常运行SQL CREATE TABLE语句,请尝试对其...
SQL Create Table SQL Constraints SQL Not Null SQL Unique SQL Primary Key SQL Foreign Key SQL Check SQL Default SQL Create Index SQL Drop SQL Alter SQL Increment SQL View SQL Date SQL ...
oracle create table sql, primry key not null
create_table.sql
createAllTable.sql
解析 mysql create table 语句,用于通过建表语句生成 model 代码文件。 yarn install yarn dev 或 npm i npm run dev // 构建支持浏览器环境的代码文件,浏览器端直接引用构建出来的 browser/sql-parser.min.js ...
SQLDelight:根据CREATE TABLE SQL语句生成Java模型
.arch._SQL_create_table_insert_data.sql
SQL CREATE TABLE 语句 12 2.3 SQL 约束(Constraints) 14 2.4 SQL NOT NULL 约束. 14 2.5 SQL UNIQUE 约束 15 2.6 SQL PRIMARY KEY 约束 17 ···· 2.7 SQL FOREIGN KEY 约束. 19 2.8 SQLALTER TABLE 语句 21 ...
教材中有三张表:Student、Course、SC...CREATE TABLE Student ( Sno CHAR(9) PRIMARY KEY, /* 列级完整性约束条件,Sno是主码*/ Sname CHAR(20) UNIQUE, /* Sname取唯一值*/ Ssex CHAR(2), Sage SMALLINT, Sdept C
SQL 创建数据库 CREATE DATABASE studb CREATE TABLE Stud insert into Stud(Sno,Sname,Ssex,Sdept,Sage)values( 0001 , Jim , M , IS ,19)
delphi+sql 动态创建数据表,仿制sql server样式
CREATE TABLE [dbo].[tbl_Vendor] ( [VendorID] [int] NOT NULL ,[VendorCode] [nvarchar](50) NULL ,[VendorNameEN] [nvarchar](200) NULL ,[VendorNameCN] [nvarchar](200) NULL ,[AddressEN] [nvarchar](500...