編輯sql腳本
步驟:(1) 創建一個批處理文件:打開記事本,創建資料庫連接信息(例如,server name,username,password,databasename等)以及要執行的*.sql腳本名稱。具體語法參考下文"osql 實用工具" 。 將文件的擴展名改為.bat 並保存。
示例1:指定待執行sql 文件的相對路徑
osql -S admin\admin -U sa -P sa -d TestDB -i c:\test.sql
pause
示例2: 待執行文件與bat文件在同一個目錄,指定相對路徑
set localdir=%~dp0
osql -S (local) -U sa -P sa -d Test -i %localdir%\test1.sql
osql -S (local) -U sa -P sa -d Test -i %localdir%\test2.sql
osql -S (local) -U sa -P sa -d Test -i %localdir%\test3.sql
pause
(2) 創建需要執行的sql 腳本, test.sql,test2.sql 和test3.sql, 並放在步驟(1)示例1中指定的位置。本例為c:\ 根目錄。如果用示例2,將待執行的sql和bat文件放在同一個目錄下。
(3) 雙擊*.bat 文件並查看運行結果。
『貳』 sql server自動生成批量執行SQL腳本的批處理
場景:
DBA那邊給我導出了所有的存儲 函數等等對象的創建腳本 有上千個文件
現在需要將這些對象創建腳本導入到另外一個庫 如何解決呢?
手動一個個執行顯然不太現實
於是手動寫了一個批處理 將所有的文件形成一個 SQL的腳本 最後以@生成的 SQL腳本方式導仔派賀入到目標庫中
OS環境:WINDOWS xp
腳本內容如下:
@echo off if exist list sql del list sql /q :input cls set input=: set /p input= 請輸入要進念派行判斷的路徑 set "input=%input:"=%" :: 上面這句為判斷%input%中是否存在引號 有則剔除 if "%input%"==":" goto input if not exist "%input%" goto input for /f "delims=" %%i in ( dir /b /a d /s "%input%" ) do echo @@%%~fnxi>>list sql if not exist list sql goto no_file start list sql exit :no_file cls echo %cur_dir% 出現錯誤 未成功生成list sql腳本! pause
使用:
另存為 BAT類型文件後 雙擊執行
輸入你腳本的路徑:
如我的E盤CRY文件夾下 有如下類型的文件:
TEST PRC
TEST FNC(有子文件夾 )
TEST VW
執行該批處理後 最後生成的list sql腳本文件內容如下(執行完批處理後會用默認的編輯器自動打開該文件):
@@E:cryTEST PRC
@@E:cry TEST FNC
@@E:cryTEST VW
打開SQLPLUS 以指定用戶登錄資料庫 然後執行: (我的腳本文件羨磨生成在d盤)
@D:list sql
這樣所有的對象就會自動在指定用戶下生成
lishixin/Article/program/SQLServer/201311/22286
『叄』 請教:SQL 腳本編寫: 創建兩個整型變數,將他們的值分別設置為2和4,然後輸出這兩個變數的和 謝謝!
代碼如下:
#define _CRT_SECURE_NO_WARNINGS 1
#include <stdio.h>
#include <stdlib.h>
int main()
{
int a = 10;
int b = 20;
int c = 0;
printf("a = %d b = %d ", a, b);
c = a;
a = b;
b = c;
printf("a = %d b = %d ", a, b);
system("pause");
return 0;
}
(3)編輯sql腳本擴展閱讀
SQL的整數型數據包括bigint型、int型、bit、smallint型和tinyint型。
bigint型數據的存儲大小為8個位元組,共64位。其中63位用於表示數值的大小,1位用於表示符號。bigint型數據可以存儲的數值范圍是-263~263-1,即 -9 223 372 036 854 775 808 ~9 223 372 036 854 775 807。
在應用中除非明確說明,否則那些接受int表達式作為其參數的函數、語句和系統存儲過程都不會改變,從而不會支持將 bigint表達式隱式轉換為這些參數。因此,當 bigint值在int數據類型支持的范圍內時,SQL Server 才將 bigint隱式轉換為int。
如果 bigint表達式包含了一個在int數據類型支持范圍之外的值,就會在運行時出現轉換錯誤。
『肆』 filza的sql編輯器如何編輯
1、通過工具欄中的「SQL編輯器」按鈕;
2、在「資料庫導航」中,單擊資料庫下的「表」節點,右鍵單擊某張表,選擇「在SQL控制台讀取數據」;
3、通過菜單欄中的「SQL編輯器」,點擊「SQL編輯器」菜單,點擊「新建腳本」或者選擇最近打開的SQL腳本;
4、通過菜單欄中「SQL編輯器」,點擊「新建SQL編輯器」菜單;
『伍』 sql文件中如何編寫循環建表的腳本
如果資料庫中已經存在test表則,將其drop掉,
if exists (select * from dbo.Sysobjects where id='test' and OBJECTPROPERTY(OBJECT_ID('test'),'IsTable')=1 )
drop table test
--新建資料庫
create table test
(
id int
)
declare @i int,@num int --定義變數用來存儲循環初始值和結束值
select @i=1,@num=1000
while (@i<=@num) ---進入循環
begin
insert into test values(@i)
select @i+=1
end
select * from test
drop table test --刪除實體表,如果程序真用則就不要刪除了!