看別人用得很順,
function saveComplete(s, e) {
var r = e.result;
var result = r.split(',');
switch (result[0]) {
case "p1":
break;
case "p2":
break;
}
我套用到自己的程式,
function GetValues(value) {//value="gghh,yyyi"
var r = value;
//alert(r);
var result = r.split(",");
lb1.SetText(result[0]);
lb2.SetText(result[1]);
}
可以alert可是label的Text就是出不來,
試了很久才發現,
原來接進來的r不是字串,
要先將r轉換成字串才不會在split的時候出錯,
在split出錯也不會跳通知,因為是Javascript,
修改成,
function GetValues(value) {//value="gghh,yyyi"
var r = value;
//alert(r);
var result = r.toString().split(",");
lb1.SetText(result[0]);
lb2.SetText(result[1]);
}
就可以了,加油。
0014DerMiniBlog
2018年5月10日 星期四
2018年3月13日 星期二
[SQL Server 2017-SSIS] OLE DB目的地錯誤輸出,資料存取模式,資料表快速載入的差別
若要知道怎麼使用錯誤輸出可參考以下。
[參考網址1] SSIS-轉檔中如何抓出pk重覆的資料
[參考網址2] [SQL Server 2017-SSIS] 使用OLE DB來源與目的地的資料匯入
此篇用圖來顯示[資料存取模式]中,
[資料表或檢視表]與[資料表或檢視表-快速載入]的錯誤輸出差別,
若選擇[資料表或檢視表-快速載入]則資料列全部都變成錯誤輸出。
改用[資料表或檢視表]沒錯的資料才有進到DB裡,
真正錯誤的資料列才會輸出到txt檔。
以上,
錯誤輸出的目的地,
可以看你需要輸出成怎麼樣的,
我選擇用txt檔案來存。
[參考網址1] SSIS-轉檔中如何抓出pk重覆的資料
[參考網址2] [SQL Server 2017-SSIS] 使用OLE DB來源與目的地的資料匯入
此篇用圖來顯示[資料存取模式]中,
[資料表或檢視表]與[資料表或檢視表-快速載入]的錯誤輸出差別,
若選擇[資料表或檢視表-快速載入]則資料列全部都變成錯誤輸出。
改用[資料表或檢視表]沒錯的資料才有進到DB裡,
真正錯誤的資料列才會輸出到txt檔。
以上,
錯誤輸出的目的地,
可以看你需要輸出成怎麼樣的,
我選擇用txt檔案來存。
2018年3月12日 星期一
2018年3月8日 星期四
[SQL Server 2017-SSMS] WITH AS、 ROW_NUMBER()、PARTITION BY查詢的資料變化
整個語法如下:
WITH TETABLE AS
(
SELECT [TraTitle],[TraDate],[TraTime],[TraNum],[TraContent], ROW_NUMBER() OVER (PARTITION BY [TraTitle],[TraDate],[TraTime],[TraNum],[TraContent] ORDER BY [TraTitle]) AS SORT
FROM
[dbo].[ForeignTra]
)
SELECT [TraTitle],[TraDate],[TraTime],[TraNum],[TraContent],SORT
FROM TETABLE WHERE SORT>1
查詢的資料變化如下:
1.
2.
3.
4.
以上方便以後參考。
WITH TETABLE AS
(
SELECT [TraTitle],[TraDate],[TraTime],[TraNum],[TraContent], ROW_NUMBER() OVER (PARTITION BY [TraTitle],[TraDate],[TraTime],[TraNum],[TraContent] ORDER BY [TraTitle]) AS SORT
FROM
[dbo].[ForeignTra]
)
SELECT [TraTitle],[TraDate],[TraTime],[TraNum],[TraContent],SORT
FROM TETABLE WHERE SORT>1
查詢的資料變化如下:
1.
2.
3.
4.
以上方便以後參考。
[SQL Server 2017-SSMS] SQL語法刪除重複資料
因為資料庫為測試資料匯入用,
所以沒有設唯一值(KEY),
裡面有很多重複資料想刪除,
上網找了語法參考了幾篇文章,
我使用的是WITH、PARTITION 與 ROW_NUMBER()的語法搭配,
因為我沒有可參考的ID(流水號)。
[參考文章1] 如何刪除 SQL Server 資料庫中重複的資料 (兩種不同解法)
[參考文章2] [SQL] 於多筆重複資料中取得該重複群組中最新一筆資料
因為我的SQL版本是2017就遇到了資料庫相容性的問題

使用以下語法:
ALTER DATABASE TestDB2
SET COMPATIBILITY_LEVEL = 90

因SQL2017最低只能相容到100,所以有錯誤訊息。
使用以下語法:
ALTER DATABASE TestDB2
SET COMPATIBILITY_LEVEL = 100

還是會有錯誤提示,但我發現其實能查詢,那就先這樣吧。
[參考文章3] ALTER DATABASE (TRANSACT-SQL) 相容性層級
WITH和 ROW_NUMBER()語法可參考這邊。
[參考文章4] SQL 中使用 WITH AS 提高性能
[參考文章5] ROW_NUMBER (Transact-SQL)
所以沒有設唯一值(KEY),
裡面有很多重複資料想刪除,
上網找了語法參考了幾篇文章,
我使用的是WITH、PARTITION 與 ROW_NUMBER()的語法搭配,
因為我沒有可參考的ID(流水號)。
[參考文章1] 如何刪除 SQL Server 資料庫中重複的資料 (兩種不同解法)
[參考文章2] [SQL] 於多筆重複資料中取得該重複群組中最新一筆資料
因為我的SQL版本是2017就遇到了資料庫相容性的問題
使用以下語法:
ALTER DATABASE TestDB2
SET COMPATIBILITY_LEVEL = 90
因SQL2017最低只能相容到100,所以有錯誤訊息。
使用以下語法:
ALTER DATABASE TestDB2
SET COMPATIBILITY_LEVEL = 100
還是會有錯誤提示,但我發現其實能查詢,那就先這樣吧。
[參考文章3] ALTER DATABASE (TRANSACT-SQL) 相容性層級
WITH和 ROW_NUMBER()語法可參考這邊。
[參考文章4] SQL 中使用 WITH AS 提高性能
[參考文章5] ROW_NUMBER (Transact-SQL)
2018年3月7日 星期三
[SQL Server 2017-SSMS] 無法使用特殊主體 'sa'
在[資料庫引擎祖態]的[伺服器組態]的驗證模式中,
[Windows 驗證模式]或[混合模式(SQL Server驗證與Windows驗證)],
選的是[Windows 驗證模式],
所以安裝完後,
SQL Server就將SQL Server驗證的'sa'帳戶設為特殊主體,
導致就算我啟用了'sa'帳號,
我要將'sa'的權限加到資料庫中也是不給加,
Google完後找到的方法真的能使用,
只是這樣以後我新增了新的資料庫,
還是得用語法把'sa'帳號的權限加入到資料庫中,
只好記個筆記了,還有感謝網友。
網友使用的是SQL2008,方式如下:
◆資料庫的相容性層級需要是:90
可用下列的指令調整:
USE [master]
GO
EXEC dbo.sp_dbcmptlevel @dbname=N'資料庫名稱', @new_cmptlevel=90
GO
◆資料庫應該要具備有效的擁有者。
請使用以下的指令來進行調整:
USE master
GO
ALTER AUTHORIZATION ON DATABASE::資料庫名稱 TO sa
或
USE [資料庫名稱]
GO
EXEC dbo.sp_changedbowner @loginame = N'sa', @map = false
GO
而我使用的是SQL2017,我只使用到如下:
USE master
GO
ALTER AUTHORIZATION ON DATABASE::資料庫名稱 TO sa
就解決了,供參考。
[參考作者]哇哈哈學習筆記
[參考文章]無法使用特殊主體 'sa'
訂閱:
意見 (Atom)
[Javascript] Devexpress label SetText
看別人用得很順, function saveComplete(s, e) { var r = e.result; var result = r.split(','); switch (r...
-
因為一開始安裝SQL在新增SQL Server執行個體時, 在[資料庫引擎祖態]的[伺服器組態]的驗證模式中, [Windows 驗證模式]或[混合模式(SQL Server驗證與Windows驗證)], 選的是[Windows 驗證模式], 所...
-
若要知道怎麼使用錯誤輸出可參考以下。 [參考網址1] SSIS-轉檔中如何抓出pk重覆的資料 [參考網址2] [SQL Server 2017-SSIS] 使用OLE DB來源與目的地的資料匯入 此篇用圖來顯示[資料存取模式]中, [資料表或檢視表]與[資料表或檢視表...
-
一開始不管怎麼設,明明DB有2142筆資料, 匯入的筆數始終都只有1325。 在[資料流程工作]的[屬性]中,將參數修改更大一點,問題就解決了。 真的不好解決啊!





