❶ 用sql語句創建表,如何以表的形式顯示出來,語句寫好了
自己打開企業管理器,隨便找個表,導出一個創建表的腳本,就什麼都有了。
要語法,SQL的聯機幫助里就有:
CREATE
TABLE
[
database_name
.
[
schema_name
]
.
|
schema_name
.
]
table_name
(
{
<column_definition>
|
<computed_column_definition>
}
[
<table_constraint>
]
[
,...n
]
)
[
ON
{
partition_scheme_name
(
partition_column_name
)
|
filegroup
|
"default"
}
]
[
{
TEXTIMAGE_ON
{
filegroup
|
"default"
}
]
[
;
]
<column_definition>
::=
column_name
<data_type>
[
COLLATE
collation_name
]
[
NULL
|
NOT
NULL
]
[
[
CONSTRAINT
constraint_name
]
DEFAULT
constant_expression
]
|
[
IDENTITY
[
(
seed
,increment
)
]
[
NOT
FOR
REPLICATION
]
]
[
ROWGUIDCOL
]
[
<column_constraint>
[
...n
]
]
<data
type>
::=
[
type_schema_name
.
]
type_name
[
(
precision
[
,
scale
]
|
max
|
[
{
CONTENT
|
DOCUMENT
}
]
xml_schema_collection
)
]
<column_constraint>
::=
[
CONSTRAINT
constraint_name
]
{
{
PRIMARY
KEY
|
UNIQUE
}
[
CLUSTERED
|
NONCLUSTERED
]
[
WITH
FILLFACTOR
=
fillfactor
|
WITH
(
<
index_option
>
[
,
...n
]
)
]
[
ON
{
partition_scheme_name
(
partition_column_name
)
|
filegroup
|
"default"
}
]
|
[
FOREIGN
KEY
]
REFERENCES
[
schema_name
.
]
referenced_table_name
[
(
ref_column
)
]
[
ON
DELETE
{
NO
ACTION
|
CASCADE
|
SET
NULL
|
SET
DEFAULT
}
]
[
ON
UPDATE
{
NO
ACTION
|
CASCADE
|
SET
NULL
|
SET
DEFAULT
}
]
[
NOT
FOR
REPLICATION
]
|
CHECK
[
NOT
FOR
REPLICATION
]
(
logical_expression
)
}
<computed_column_definition>
::=
column_name
AS
computed_column_expression
[
PERSISTED
[
NOT
NULL
]
]
[
[
CONSTRAINT
constraint_name
]
{
PRIMARY
KEY
|
UNIQUE
}
[
CLUSTERED
|
NONCLUSTERED
]
[
WITH
FILLFACTOR
=
fillfactor
|
WITH
(
<index_option>
[
,
...n
]
)
]
|
[
FOREIGN
KEY
]
REFERENCES
referenced_table_name
[
(
ref_column
)
]
[
ON
DELETE
{
NO
ACTION
|
CASCADE
}
]
[
ON
UPDATE
{
NO
ACTION
}
]
[
NOT
FOR
REPLICATION
]
|
CHECK
[
NOT
FOR
REPLICATION
]
(
logical_expression
)
[
ON
{
partition_scheme_name
(
partition_column_name
)
|
filegroup
|
"default"
}
]
]
<
table_constraint
>
::=
[
CONSTRAINT
constraint_name
]
{
{
PRIMARY
KEY
|
UNIQUE
}
[
CLUSTERED
|
NONCLUSTERED
]
(column
[
ASC
|
DESC
]
[
,...n
]
)
[
WITH
FILLFACTOR
=
fillfactor
|WITH
(
<index_option>
[
,
...n
]
)
]
[
ON
{
partition_scheme_name
(partition_column_name)
|
filegroup
|
"default"
}
]
|
FOREIGN
KEY
(
column
[
,...n
]
)
REFERENCES
referenced_table_name
[
(
ref_column
[
,...n
]
)
]
[
ON
DELETE
{
NO
ACTION
|
CASCADE
|
SET
NULL
|
SET
DEFAULT
}
]
[
ON
UPDATE
{
NO
ACTION
|
CASCADE
|
SET
NULL
|
SET
DEFAULT
}
]
[
NOT
FOR
REPLICATION
]
|
CHECK
[
NOT
FOR
REPLICATION
]
(
logical_expression
)
}
<index_option>
::=
{
PAD_INDEX
=
{
ON
|
OFF
}
|
FILLFACTOR
=
fillfactor
|
IGNORE_DUP_KEY
=
{
ON
|
OFF
}
|
STATISTICS_NORECOMPUTE
=
{
ON
|
OFF
}
|
ALLOW_ROW_LOCKS
=
{
ON
|
OFF}
|
ALLOW_PAGE_LOCKS
={
ON
|
OFF}
}
❷ sql 表合並
合並的時候要注意的是 identity列,rowguid列,和唯一索引。
可以只用 select * into c from
(select * from a union select * from b)
❸ sql怎麼判斷 uniqueidentifier 類型
uniqueidentifier數據類型可存儲16位元組的二進制值,其作用與全局唯一標記符(GUID)一樣。GUID是唯一的二進制數:世界上的任何兩台計算機都不會生成重復的GUID值。GUID主要用於在用於多個節點,多台計算機的網路中,分配必須具有唯一性的標識符。 在SQL中 ROWGUIDCOL表示新列是行的全局唯一標識列。對於每個表只能指派一個uniqueidentifier 列作為ROWGUIDCO列。ROWGUIDCOL屬性只能指派給uniqueidentifier列
❹ 求SQL高手解答:sql內聯視圖子查詢中的where條件中無法引用最外層查詢結果數據
嵌套查詢先處理內查詢,由內向外處理,外層利用內層的查詢結果。
❺ SQL中如何改變一列的數據類型
你可以使用
ALTER
TABLE
加
ALTER
COLUMN
來更改指定的列
數據類型
,如:
CREATE
TABLE
myTest
(fId
int,fName
nvarchar(20)
null)
創建一個表,名為:myTest,包含兩個
欄位
。如果此時你想要更改
fName
列,那麼可以使用以下
語句
:
ALTER
TABLE
myTest
ALTER
COLUMN
fName
nvarchar(30)
null
這里要注意,如果指定的新的數據類型長度比原來的數據類型小,那麼會出現數據丟失的情況,所以千萬要注意,另外,不是所有的數據類型都可以更改,以下是SQL
聯機叢書
中提到的注意事項:
要更改的列不能是:
·數據類型為
text、image、ntext
或
timestamp
的列。
·表的
ROWGUIDCOL
列。
·計算列或用於計算列中的列。
·被復制列。
·用在
索引
中的列,除非該列數據類型是
varchar、nvarchar
或
varbinary,數據類型沒有更改,而且新列大小等於或者大於舊列大小。
·用在由
CREATE
STATISTICS
語句創建的統計中的列。首先用
DROP
STATISTICS
語句刪除統計。由
查詢優化器
自動生成的統計會由
ALTER
COLUMN
自動除去。
·用在
PRIMARY
KEY
或
[FOREIGN
KEY]
REFERENCES
約束中的列。
用在
CHECK
或
UNIQUE
約束中的列,除非用在
CHECK
或
UNIQUE
約束中的可變長度列的長度允許更改。
·有相關聯的
默認值
的列,除非在不更改數據類型的情況下允許更改列的長度、精度或小數位數。
❻ sql中的identitycol和rowguidcol是什麼意思呢
SELECT子句:
identitycol:返回標識列。有關更多信息,可參見IDENTITY(屬性)、ALTER TABLE和CREATE TABLE。如果FROM子句中的多個表內有包含IDENTITY屬性的列,則必須用特定的表名(如 T1.identitycol)限定 identitycol。
創建表:
rowguidcol:指定列為全球惟一鑒別行號列(rowguidcol是Row Global UniqueIdentifier Column的縮寫)。此列的數據類型必須為UNIQUEIDENTIFIER類型。一個表中數據類型為UNIQUEIDENTIFIER的列中只能有一個列被定義為rowguidcol列。rowguidcol屬性不會使列值具有惟一性,也不會自動生成一個新的數據值給插入行。需要在INSERT語句中使用NEWID()函數或指定列的默認值為NEWID()函數。
修改表:
{ADD|DROP}rowguidcol}:添加或刪除列的rowguidcol屬性。rowguidcol屬性只能指定給一個UNIQUEIDENTIFIER列。
SELECT子句:
rowguidcol:返回行全局惟一標識列。如果在FROM子句中有多個表具有rowguidcol屬性,則必須用特定的表名(如T1.rowguidcol)限定 rowguidcol。
❼ sql server環境下如何使表中某一列表示其他若干列的平均值,公式如何寫
表達式可以是非計算列的列名、常量、函數、變數,也可以是用一個或多個運算符連接的上述元素的任意組合。表達式不能為子查詢。
舉例說明,你有A
B兩列,數據類型都為decimal,你需要在C列對A
B求和
可以在公式里寫
A+B
;需要求平均值,那可以寫(A+B)/2。但是你不能使用聚合函數來完成公式,比如AVG,SUM等,只能使用非聚合函數或者自定義的不包含查詢的函數來書寫公式,如ABS,DATEPART等
另外SQL語句里
定義計算列的格式參見SQL幫助create
table部分
❽ SQL資料庫同步 列名 'rowguidcol '無效
你訂閱的伺服器的表結構有問題吧!
應該是訂閱伺服器的表裡沒有rowguidcol 列!
---------------------------------
如果訂閱伺服器里的表是發布伺服器發布過去的應該不會出現列名 'rowguidcol '無效的錯誤!!你試者讓發布伺服器去發布那個表,也就是訂閱伺服器里要沒有發布伺服器發布的表!
----------
如果你能有100%的把握確定不是發布配置的問題,那你就檢查你的表結構是不是有問題!! 檢查是不是許可權的問題!發布伺服器與訂閱伺服器用戶的許可權是不是一樣!
❾ 各位大俠,幫忙看下SQL 2000報錯這是什麼意思,急!!!
錯誤的意思是說,目標列不允許null值,而數據源有null值
數據源的欄位名是F15,目標列欄位名是rowguid
❿ SQL資料庫如何將GUID全重置為"0"
GUID 是 全局唯一標識符(GUID,Globally Unique Identifier),如果全設置成 0 ,無法起到全局標識的作用,因此不能重置為0。