當前位置:首頁 » 編程語言 » 查主鍵的sql語句
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

查主鍵的sql語句

發布時間: 2023-01-20 06:02:19

⑴ 在sql server中如何查看主鍵名並刪除

以sqlserver2008為例。

1、登錄SQL Server Management Studio。

2、進入後,查看左邊的樹,找到要查找的表所在的庫。

3、依次點擊資料庫——系統資料庫——表——系統表——表名左邊的「+」——鍵

4、如圖所示就是主鍵名:

⑵ sql 語句判斷表是否有主鍵

--【查找主鍵】
--SQLSERVER
selectnameaspkNamefromdbo.sysobjectswherextype='PK'andparent_obj=(selectidfromdbo.sysobjectswherename='表名')
--ORACLE
SELECTCONSTRAINT_NAMEFROMUSER_CONSTRAINTSWHERETABLE_NAME=UPPER('表名')ANDCONSTRAINT_TYPE='P'

⑶ 在ORACLE,怎麼用一個SQL語句查詢一個已知表的主鍵欄位

舉個例子(但不是最優的),看是否有用,如查找scott.emp表的primary key欄位.

1.以SCOTT用戶登錄。

2.執行以下代碼。

SET PAGESIZE 0
SET LONG 90000
SELECT dbms_metadata.get_ddl('TABLE', table_name) FROM user_tables where table_name='EMP';

3.查找類似CONSTRAINT "PK_EMP" PRIMARY KEY ("EMPNO")的內容,後面部分就是表的主鍵欄位。

如不知表所屬的owner,可以用:select owner,table_name from dba_tables where table_name='表名';

希望以上對你有所啟示。

⑷ MYSQL查詢表的主鍵

SELECT
t.TABLE_NAME,
t.CONSTRAINT_TYPE,
c.COLUMN_NAME,
c.ORDINAL_POSITION
FROM
INFORMATION_SCHEMA.TABLE_CONSTRAINTS AS t,
INFORMATION_SCHEMA.KEY_COLUMN_USAGE AS c
WHERE
t.TABLE_NAME = c.TABLE_NAME
AND t.TABLE_SCHEMA = 'test'
AND t.CONSTRAINT_TYPE = 'PRIMARY KEY';

測試執行結果如下:

mysql> SELECT
-> t.TABLE_NAME,
-> t.CONSTRAINT_TYPE,
-> c.COLUMN_NAME,
-> c.ORDINAL_POSITION
-> FROM
-> INFORMATION_SCHEMA.TABLE_CONSTRAINTS AS t,
-> INFORMATION_SCHEMA.KEY_COLUMN_USAGE AS c
-> WHERE
-> t.TABLE_NAME = c.TABLE_NAME
-> AND t.TABLE_SCHEMA = 'test'
-> AND t.CONSTRAINT_TYPE = 'PRIMARY KEY'
-> LIMIT 3;
+------------+-----------------+-------------+------------------+
| TABLE_NAME | CONSTRAINT_TYPE | COLUMN_NAME | ORDINAL_POSITION |
+------------+-----------------+-------------+------------------+
| mr_dept | PRIMARY KEY | dept_id | 1 |
| order | PRIMARY KEY | id | 1 |
| tab | PRIMARY KEY | id | 1 |
+------------+-----------------+-------------+------------------+
3 rows in set (0.06 sec)

⑸ 用sql語句如何查看主鍵名

SELECTTABLE_NAME,COLUMN_NAMEFROMINFORMATION_SCHEMA.KEY_COLUMN_USAGE
WHERETABLE_NAME='表名'

⑹ sql查詢 復合主鍵的查詢語句怎麼寫

查詢什麼,哪個列組合是主鍵?sql語句復合主鍵有2種比較常用的寫法
,假如表a
,是以a1,a2組合作為主鍵,一種是同時寫出a1,a2條件,一種是a1||a2作為主鍵

⑺ sqlserver怎麼獲取主鍵的值

插入一條記錄後想要立刻獲取其數據表中的sql server主鍵返回值。這個主鍵是自動生成的,其實實現的方式有很多,比如再進行一次查詢,獲取出來。或者在插入數據之前取出最大值,在最大值上面加一等等,方法很多,但是有些很不方便。
個人感覺最快的方式就是,在插入數據後直接獲取sql server主鍵的值,然後返回過來。
方法如下:
sql語句如下:
INSERT INTO tableName (fieldname ...) values (value ...) SELECT @@IDENTITY AS returnName;

在sql語句中加入SELECT @@IDENTITY AS returnName;用來獲取sql server主鍵的值
在程序中獲取返回值:
public int sqlexecutereader(string sql) { DBopen(); SqlCommand myComm = new SqlCommand(sql, Connection); int newID = Convert.ToInt32(myComm.ExecuteScalar()); DBclose(); return newID; }

當然在此處主鍵是int類型的自動增加的。DBopen();DBclose();的操作在此就不多說了。

⑻ SQL主外鍵查詢語句

這是SQL課程里比較典型的資料庫結構和查詢例子了,就是一個多表連接查詢的例子。course表裡一般存的是課程信息,student表存儲學生信息。這兩個表一般是沒有關系的,應該還有一個選課表,如sc表,存放學生選課的情況和考試成績
如果你的course表存放了學生課程成績之類信息的話,可以這樣查
select c.sid,sname,courseid,score
from student s join course c
on s.sid=c.sid
不過具體寫法還要看你的表結構。

⑼ sql 查詢 一個資料庫中的所有主鍵

SELECT
表名=case
when
a.colorder=1
then
d.name
else
''
end,
欄位序號=a.colorder,
欄位名=a.name,
標識=case
when
COLUMNPROPERTY(
a.id,a.name,'IsIdentity')=1
then
'√'else
''
end,
主鍵=case
when
exists(SELECT
1
FROM
sysobjects
where
xtype='PK'
and
name
in
(
SELECT
name
FROM
sysindexes
WHERE
indid
in(
SELECT
indid
FROM
sysindexkeys
WHERE
id
=
a.id
AND
colid=a.colid
)))
then
'√'
else
''
end,
類型=b.name,
佔用位元組數=a.length,
長度=COLUMNPROPERTY(a.id,a.name,'PRECISION'),
小數位數=isnull(COLUMNPROPERTY(a.id,a.name,'Scale'),0),
允許空=case
when
a.isnullable=1
then
'√'else
''
end,
默認值=isnull(e.text,'')
FROM
syscolumns
a
left
join
systypes
b
on
a.xtype=b.xusertype
inner
join
sysobjects
d
on
a.id=d.id
and
d.xtype='U'
and
d.name<>'dtproperties'
left
join
syscomments
e
on
a.cdefault=e.id
order
by
a.id,a.colorder