1樓:乖寶寶
主要是bai
查詢all_tables表的dutable_name和owner,如果表存在zhi,dao則執行execute immediate 'drop table table_name';sql**
版--判斷表是否存在,如果存在則刪權除declarenum number;beginselect count(1) into num from all_tables where table_n
mysql如何判斷某表是否存在主鍵,如果存在就刪除主鍵,如果不存在就建立主鍵
2樓:旺理財
1查詢主鍵
存在與否 如果存在count值為1 不存在count值為0select count(*) primarynumfrom information_schema.key_column_usage t
where t.table_name ='test'
如果結果 >= 1,則表示有主鍵。
2刪除存在的主鍵
alter table test drop primary key;
3.建立主鍵
alter table test add primary key(id);
sql求助:想建立一個表,但在建立前先判斷是否存在。如存在就刪除它,不存在就建立。
3樓:他岸有魚
----建立
復一個表
制aaa--------------start-----------------
if exists (select * from sysobjects where id = object_id(n'[aaa]') and objectproperty(id, n'isusertable') = 1)
drop table [aaa] ---如果已存在aaa表,則先刪除
---建立aaa表
create table [aaa](
[id] uniqueidentifier not null ,[code] nvarchar(30) ,[name] nvarchar(200) )
4樓:匿名使用者
--判斷來表是自否存在
baiif exists (select * from sysobjects where name='returnvisit')
--刪除du表zhi
drop table returnvisit--建立dao表
create table returnvisit(rid uniqueidentifier not null,--主鍵)
5樓:匿名使用者
if exists(select * from sys.tables where name='test_table')
drop table test_tablegocreate table test_table(test_id int identity(1,1) primary key not null ,
test_key varchar(10) not null ,test_value varchar(20) not null ,test_type int not null ,test_belongto int,
test_grade int default 1,test_remark varchar(50),test_visible bit default 1);go
6樓:安與生
if exists (select * from sys.objects where object_id = object_id(n'tablename') and type in (n'u'))
drop table tablename
如何使用sql語句判斷一個資料庫是否已經存在
7樓:
1.資料
庫if exists(select 1 from master..dbo.sysdatabases where name='example')
print 'database existed'
else
print 'database not existed'
2.表if exists(select 1 from sysobjects where name ='表名' and type in ('s','u'))
print 'exists table'
else
print 'not exists table'
8樓:get格調寵兒
讓兩個資料庫能直接建立分散式資料庫併入同一個事務那就簡單了,像 oracle 有 database link 能做到。db2 也有類似的方式。
insert into b.table2 (d)select c
from a.table1 a
left join b.table2 b on a.c = b.dwhere b.d is null
sql語句,怎樣判斷一個欄位中是否存在某一個值
9樓:繞到夢魂深處
寫法如下: select * from mytable where field like '%查詢的值%'
具體替換表名和欄位名
10樓:匿名使用者
sql不是有instr函式麼?
instr('abcdefghiabc', 'def') ⇒ 4
沒查到會返回0
寫一段pl/sql程式**,當向表中插入資料時,先查詢是否存在相同主鍵,如果不存在則插入,存在則提醒。
11樓:匿名使用者
首先建立這個函式應該是沒問題的吧
首先最好的建議是使用觸發器
另外如果要想在函式中使用dml語句的話,建議增加pragma autonomous_transaction;和commit;那麼你的函式建議修改為如下(表名和列名修改對照修改過來):
create or replace function fun_charge_s(x in number) return number as
pragma autonomous_transaction; ----
s_warn number;
begin
select count(*) into s_warn from test2 where year = x;
if nvl(s_warn, 0) = 0 then
insert into test2 (year) values (x);
commit; ----
dbms_output.put_line('可以插入資料。');
return 0;
else
dbms_output.put_line('存在相同sno,不可以插入。');
return s_warn;
end if;
exception
when others then
dbms_output.put_line(sqlerrm || sqlcode);
end;
12樓:dl_會飛的青蛙
報的是什麼錯誤 貼出來!~
13樓:匿名使用者
**看不來
出什麼問題,源count(*) 必然會返回值的,不需要用nvl函式 直接 if s_warn=0 then ..
不要用count(*) 很耗費資源的,要用existsselect case when exists(select * from s_warn where sno=x) then 1 else 0 end into s_warm from dual
fortran判斷資料夾是否存在
我是這麼做的 program abc use dfport 要用dfport,很關鍵 implicit none character 20 infile1,infile2,infile3 logical istatus1,istatus2 infile2 c abcd 定義一個字串,代表要判斷是否存...
sql語句,怎樣判斷欄位中是否存在某值
寫法如下 select from mytable where field like 查詢的值 具體替換表名和欄位名 sql不是有instr函式麼?instr abcdefghiabc def 4 沒查到會返回0 sql語句,怎樣判斷一個欄位中是否存在某一個值 可以參考下面的描述 instr c1,c...
sql語句怎樣判斷欄位中是否存在某值
可以參考下面的描述 instr c1,c2,i,j 在一個字串中搜尋指定的字元,返回發現指定的字元的位置 c1 被搜尋的字串 c2 希望搜尋的字串 i 搜尋的開始位置,預設為1 j 出現的位置,預設為1 sql select instr oracle traning ra 1,2 instring ...