星期二, 1月 07, 2014
星期二, 2月 14, 2012
[MS SQL] Paging 的語法
跟MSSQL的分頁指令蠻不一樣的,
在MySQL用limit的方法就可以簡單達成!!
$per_page=20;
$page=2;
$first_result=($page-1)*$per_page;
"select * from contacts limit $first_result, $per_page order by last_name;";
"select * from contacts order by last_name limit $first_result, $per_page ;";
//自已的範例加了order by
select * from contact_list where order by create_date limit 1,1
尚未考慮最佳解法!!
$per_page=20;
$page=2;
$first_result=($page-1)*$per_page;
"select * from contacts order by last_name limit $first_result, $per_page ;";
//自已的範例加了order by
select * from contact_list where order by create_date limit 1,1
尚未考慮最佳解法!!
星期一, 4月 18, 2011
[MSSQL] 安裝錯誤解決方法
問題:升級到 SQL Server 2005 失敗,並出現「安裝程式無法連接到資料庫服務進行伺服器組態。」錯誤訊息。
問題:如果在升級到 SQL Server 2005 期間無法使用通訊埠 1433,則 SQL Server 安裝程式會傳回下列錯誤:
SQL Server 安裝程式無法連接到資料庫服務進行伺服器組態。
解決方案:若要繼續,請終止使用通訊埠 1433 的處理序,並繼續進行 SQL Server 2005 安裝程式:
從命令提示字元執行 netstat -o。
識別使用通訊埠 1433 的應用程式或處理序。
使用 [工作管理員] 來關閉應用程式或終止處理序以釋放通訊埠 1433。
繼續 SQL Server 2005 安裝程式。
如果使用上述步驟仍無法釋放通訊埠 1433,請使用下列其他步驟:
開啟 [控制台] 的 [新增或移除程式]。
選取 [Microsoft SQL Server 2005],再按一下 [變更]。
在 [元件選擇] 頁面上,按一下要升級的 SQL Server 執行個體的選項按鈕,然後按 [下一步]。
在 [功能維護] 頁面上,按一下 [Database Engine],然後按 [下一步]。
按一下 [繼續] 來繼續 SQL Server 2005 的升級作業。
Reference:
對 SQL Server Database Engine 的安裝進行疑難排解
問題:如果在升級到 SQL Server 2005 期間無法使用通訊埠 1433,則 SQL Server 安裝程式會傳回下列錯誤:
SQL Server 安裝程式無法連接到資料庫服務進行伺服器組態。
解決方案:若要繼續,請終止使用通訊埠 1433 的處理序,並繼續進行 SQL Server 2005 安裝程式:
從命令提示字元執行 netstat -o。
識別使用通訊埠 1433 的應用程式或處理序。
使用 [工作管理員] 來關閉應用程式或終止處理序以釋放通訊埠 1433。
繼續 SQL Server 2005 安裝程式。
如果使用上述步驟仍無法釋放通訊埠 1433,請使用下列其他步驟:
開啟 [控制台] 的 [新增或移除程式]。
選取 [Microsoft SQL Server 2005],再按一下 [變更]。
在 [元件選擇] 頁面上,按一下要升級的 SQL Server 執行個體的選項按鈕,然後按 [下一步]。
在 [功能維護] 頁面上,按一下 [Database Engine],然後按 [下一步]。
按一下 [繼續] 來繼續 SQL Server 2005 的升級作業。
Reference:
對 SQL Server Database Engine 的安裝進行疑難排解
星期一, 11月 08, 2010
星期四, 9月 23, 2010
星期二, 8月 17, 2010
[MS SQL] 跨資料庫查詢
主機同一台,但資料庫名稱不同時的查詢方式。
SELECT * FROM 資料庫名稱.dbo.TableA ta
INNER JOIN 資料庫名稱.dbo.TableB tb ON ta.xx=tb.xx
SELECT * FROM 資料庫名稱.dbo.TableA ta
INNER JOIN 資料庫名稱.dbo.TableB tb ON ta.xx=tb.xx
星期三, 7月 21, 2010
[SQLite]Firefox SQLite Manager
利用Sqlite Manager來測試iphone裡面一些apps使用的資料表並將它匯出成csv文字檔(另外匯出*.sql的執行會是亂碼XD),
點選資料->開啟文字檔->設定檔案原始格式
由於excel直接開啟這個csv匯出的這個檔案,會因為excel不支援utf8而亂碼,
所需先需要先啟動excel後,利用外部匯入這個資料來指定utf8編碼格式開啟,就可以順利打開:點選資料->開啟文字檔->設定檔案原始格式
星期一, 7月 19, 2010
星期三, 7月 14, 2010
星期四, 7月 01, 2010
星期三, 6月 23, 2010
星期五, 6月 18, 2010
[MSSQL] CASE 判斷欄位null值
今天需要將計算時間欄位並判斷欄位是否為null,最後回傳bool值,,來給頁面元件繫結bool值,但發生一些錯誤,不過查一下資料還是順利解決,記錄一下,以便日後參考。
星期日, 3月 21, 2010
sql 指定日期查詢
串接字串以達到指定查詢日期的效果
SELECT * FROM vw_CourseList
WHERE (CourseStart BETWEEN CONVERT(datetime, STR(YEAR(GETDATE())) + '/03/01') AND CONVERT(datetime, STR(YEAR(DATEADD(year, 1, GETDATE())))
SELECT * FROM vw_CourseList
WHERE (CourseStart BETWEEN CONVERT(datetime, STR(YEAR(GETDATE())) + '/03/01') AND CONVERT(datetime, STR(YEAR(DATEADD(year, 1, GETDATE())))
+ '/02/28'))
[MS SQL] 日期處理方法
--檢查是否為SQL SERVER合法日期格式
SELECT ISDATE('2004-03-01')
--1 (int)正確
SELECT ISDATE('2004-02-33')
--0 (int)錯誤
--取得現在時間GETDATE()
select GETDATE()
--2008-04-26 03:25:31.900
星期二, 3月 16, 2010
匯入文件太大時,匯入工具無法支援
select * into [test]
from OPENROWSET('MICROSOFT.JET.OLEDB.4.0','Excel 5.0;HDR=YES;DATABASE=c:\xxx.xls',importdata$)
from OPENROWSET('MICROSOFT.JET.OLEDB.4.0','Excel 5.0;HDR=YES;DATABASE=c:\xxx.xls',importdata$)
星期三, 3月 10, 2010
Update From Query
UPDATE Art.dbo.Course
SET Art.dbo.Course.CourseStart = Shanghai.dbo.Course.BeginDate
from Art.dbo.Course,Shanghai.dbo.Course
WHERE (Art.dbo.Course.CourseID = Shanghai.dbo.Course.CourseID)
UPDATE Members
SET MemberProfessional = Professional
from Members,TeacherProfessional
WHERE (MemberNo = No)
同以下語法
UPDATE Members
SET MemberProfessional = TeacherProfessional.Professional
FROM Members INNER JOIN
TeacherProfessional ON Members.MemberNo = TeacherProfessional.No
Reference:
http://blog.yam.com/masonblog/article/11536008
Update from a Select
update 问题,更新 表一的A字段 = 表二的B字段
SET Art.dbo.Course.CourseStart = Shanghai.dbo.Course.BeginDate
from Art.dbo.Course,Shanghai.dbo.Course
WHERE (Art.dbo.Course.CourseID = Shanghai.dbo.Course.CourseID)
UPDATE Members
SET MemberProfessional = Professional
from Members,TeacherProfessional
WHERE (MemberNo = No)
同以下語法
UPDATE Members
SET MemberProfessional = TeacherProfessional.Professional
FROM Members INNER JOIN
TeacherProfessional ON Members.MemberNo = TeacherProfessional.No
Reference:
http://blog.yam.com/masonblog/article/11536008
Update from a Select
update 问题,更新 表一的A字段 = 表二的B字段
星期日, 3月 07, 2010
星期一, 1月 11, 2010
SQL 選擇資料後馬上插入資料表XD
INSERT INTO MembersRole
(MembersRoleMemberID, MembersRoleOrgRoleID)
SELECT MemberID, MemberRoleID
FROM Members
(MembersRoleMemberID, MembersRoleOrgRoleID)
SELECT MemberID, MemberRoleID
FROM Members
訂閱:
意見 (Atom)

