sql 迴圈各表,刪除資料 動態SQL語句
declare @tabname varchar(30)
declare @sqlstr nvarchar(300)
declare @TimeBegin numeric(15)
set @i = 1
while @i<64
begin
set @TimeBegin = 1338530131
set @tabname = 'tablename'
set @tabname = @tabname + convert(varchar(20),@i)
set @sqlstr = 'delete from ' + @tabname + ' where column_Time<' + convert(varchar(30),@TimeBegin)
Exec(@sqlstr)
set @
end
動態SQL語句
1 :普通SQL語句可以用Exec執行
eg: Select * from tableName
Exec('select * from tableName')
Exec sp_executesql N'select * from tableName' -- 請注意字串前一定要加N
2:欄位名,表名,資料庫名之類作為變數時,必須用動態SQL
eg:
declare @fname varchar(20)
set @fname = 'FiledName'
Select @fname from tableName -- 錯誤,不會提示錯誤,但結果為固定值FiledName,並非所要。
Exec('select ' + @fname + ' from tableName') -- 請注意 加號前後的 單引號的邊上加空格
當然將字串改成變數的形式也可
declare @fname varchar(20)
set @fname = 'FiledName' --設定欄位名
declare @s varchar(1000)
set @s = 'select ' + @fname + ' from tableName'
Exec(@s) -- 成功
exec sp_executesql @s -- 此句會報錯
declare @s Nvarchar(1000) -- 注意此處改為nvarchar(1000)
set @s = 'select ' + @fname + ' from tableName'
Exec(@s) -- 成功
exec sp_executesql @s -- 此句正確
3. 輸出引數
declare @num int,
@sqls nvarchar(4000)
set @sqls='select count(*) from tableName'
exec(@sqls)
--如何將exec執行結果放入變數中?
declare @num int,
@sqls nvarchar(4000)
set @sqls='select @a=count(*) from tableName '
exec sp_executesql @sqls,N'@a int output',@num output
select @num
相關推薦
sql 迴圈各表,刪除資料 動態SQL語句
declare @i int declare @tabname varchar(30) declare @sqlstr nvarchar(300) declare @TimeBegin numeric(15) set @i = 1 while @i<64 begin
SQL語句基礎1:建立和刪除資料庫,建表,插入資料並加入適當約束
1.建立圖書管理資料庫 create database bookManager on ( name=bookManager_data, filename='D:\SQL\bookManager_data.mdf', size=5MB, maxs
oracle資料庫中sql語言建立表,更新,刪除資料
一sql語言的分類 sql語言分為4類:DQL(資料查詢語言),DML(資料操縱語言),資料定義語言(DDL),資料控制語言(DCL)。 二資料定義語言 資料定義語言用於建立,刪除,修改資料庫中的各種物件,物件比如-表,索引,檢視,同義詞、聚簇等 CREATETABLE/
建庫,建表,新增資料 SQL命令
create database ssm default character set utf8; use ssm; create table flower( id int(10) primary key auto_increment comment'編號', name
刪除表中重複資料的sql
一方法: 查詢表中重複資料 select * from employee where employeeId in (select employeeId from employee group by employeeId having count(employeeId) &
C++資料結構與STL--有序表,刪除表重複項
template<typename T>//假設容器為listvoid uniq(list<T>& lst) { auto beg=lst.begin(); auto end=lst.end(); T currVal; //記錄當前表資料值 while(beg!=end)
sql批量操作資料庫,刪除表,刪除資料庫,刪除儲存過程,刪除檢視
--刪除所有表的外來鍵約束-- DECLARE c1 cursor for select 'alter table ['+ object_name(parent_obj) + '] dropconstraint ['+name+']; ' from syso
mysql儲存過程迴圈遍歷sql結果集,並執行動態sql
/* 將其他幾張表資料複製到一張總表中 */ DROP PROCEDURE IF EXISTS sp_customer; CREATE PROCEDURE sp_customer() BEGIN -- 需要執行的SQL語句 DECLARE v_sql_1 VARCH
Oracle 觸發器 插入,更新,刪除,資料同步,兩表同步
create or replace trigger UserToTemp after insert or update or delete on user_info for each row declare integrity_error exception; errno
用SQL語言進行復雜查詢:對各表中的資料進行不同條件的連線查詢和巢狀查詢: 1)查詢每個學生及其選課情況; 2)查詢每門課的間接先修課
對各表中的資料進行不同條件的連線查詢和巢狀查詢: 1)查詢每個學生及其選課情況; 2)查詢每門課的間接先修課 3)將STUDENT,SC進行右連線 4)查詢有不及格的學生姓名和所在系 5)查詢所有成績為優秀(大於90分)的學生姓名 6)查詢既選修了2號課程又選修了3號課程的
Java連線HBASE資料庫,建立一個表,刪除一張表,修改表,輸出插入,修改,資料刪除,資料獲取,顯示錶資訊,過濾查詢,分頁查詢,地理hash
準備工作 1、建立Java的Maven專案 建立好的目錄結構如下: 另外注意junit的版本,最好不要太高,最開始筆者使用的junit4.12的,發現執行的時候會報錯。最後把Junit的版本改成4.7的之後,問題解決了。 編寫POM檔案 <
分別使用PreparedStatement和Statement對mysql資料庫進行建立表,增加資料,查詢資料和刪除資料過程
在使用eclipse工具編寫Java程式碼連線資料庫並對資料庫進行處理時,總會用到對資料的增刪改查操作。那麼這個 時候就用到了java自帶的sql庫中的PreparedStatement或者Statement了。 其實PreparedStatement和Statement使
sql添加列,刪除列,修改列
數據庫 str alter 代碼 div lena lte eight 設計器 有時候,當數據庫裏面有數據了,再到設計器裏面刪除列,就刪不掉。只能用代碼刪除。 alter table tableName drop column columnName 添加列
Java鏈接HBASE數據庫,創建一個表,刪除一張表,修改表,輸出插入,修改,數據刪除,數據獲取,顯示表信息,過濾查詢,分頁查詢,地理hash
can charat nfa true 目錄結構 dfa byte sin extra 準備工作 1、創建Java的Maven項目 創建好的目錄結構如下: 另外註意junit的版本,最好不要太高,最開始筆者使用的junit4.12的,發現運行的時候會報錯。最後把Junit
Mysql兩張表相同ID匹配,輸出到新表,刪除舊表匹配
mysql匹配數據0x00:前言。有兩張表,一張表字段是ID-Email,另一張表字段是ID-PWD,想用SQL腳本把這兩張表合並合並,因為有相同的ID才可以匹配。0x01:示例。一個字段ID:Email另一個字段是ID:PWD想要的輸出就結果ID:Email:PWD0x02:Mysql語句。註意:因為MyS
SQLALchemy之創建表,刪除表
alc 創建 all data- unique prim nullable 利用 cad 1、創建引擎 "數據庫+第三方模塊://用戶名:密碼@數據庫服務端IP:端口號/數據庫名?編碼" engine = create_engine( "mysql+p
SQL增加、修改、刪除資料
複製一個表 複製emp表 —— 新的表名稱為myemp CREATE TABLE myemp AS SELECT * FROM emp ; select * from tab; 檢視當前使用者所有表,可以看到myemp複製完畢 (一)增加資料 (1)插入一條新的資料 INSERT IN
SQL server 2008 新增,刪除欄位
分享一下我老師大神的人工智慧教程!零基礎,通俗易懂!http://blog.csdn.net/jiangjunshow 也歡迎大家轉載本篇文章。分享知識,造福人民,實現我們中華民族偉大復興!  
SQL Server 2008 資料庫誤刪除資料的恢復
關鍵字:SQL Server 2008, recover deleted records 背景:誤刪除資料。 SQL Server中誤刪除資料的恢復本來不是件難事,從事務日誌恢復即可。但是,這個恢復需要有兩個前提條件: 1. 至少有一個誤刪除之前的資料庫完全備份。 2. 資料庫的恢
github二次上傳檔案,分支檔案上傳,刪除資料夾
看了太多GitHub入門教程,終於搞通了,樂在分享。 部分參考:第一個GitHub專案https://blog.csdn.net/wangyan_z/article/details/79148059 git上傳本地分支到github專案分支 https://blog.csdn.