2023年2月20日 星期一

ChatGPT 詠唱案例懶人包(筆記)



 

2023/02/21

臉書上推的廣告

這篇整理的很好. 

貼上連結,備份起來


ChatGPT 詠唱案例懶人包

https://www.rayskyinvest.com/96682/chatgpt-examples?fbclid=IwAR3dgWmWP-R7geMHd-a_-0Lu_PSgqCXnuzAmEvESDtuUAFAtbrdMprhXhKo




2023年2月2日 星期四

如何學習C#程式 -開始

 


1.下載Visual Studio

請安裝 Community 的版本,這是免費的
https://visualstudio.microsoft.com/zh-hant/

2.到MS官網看C#的技術文件
https://learn.microsoft.com/zh-tw/dotnet/csharp/

3.MS官網的入門課程
https://learn.microsoft.com/zh-tw/training/browse/?expanded=vs&terms=C%23%20&resource_type=learning%20path


.Net 課程分享 :   從頭打造 C#、.NET、ASP NET Core 開發環境

教程網址: https://www.youtube.com/watch?v=Ohn7Hpv5_4s

2019年10月15日 星期二

查詢SQL 的DB schema

#找到更好用的語法, 記錄一下.


SELECT tb.TABLE_NAME AS 'TableName' ,CASE WHEN tb.TABLE_TYPE = 'VIEW' THEN (SELECT value FROM sys.fn_listextendedproperty(NULL, 'user', 'dbo', 'view', tb.TABLE_NAME, DEFAULT, DEFAULT) WHERE name = 'MS_Description' AND objtype = 'VIEW') ELSE (SELECT value FROM sys.fn_listextendedproperty(NULL, 'user', 'dbo', 'table', tb.TABLE_NAME, DEFAULT, DEFAULT) WHERE name = 'MS_Description' AND objtype = 'TABLE') END AS 'TableDescription' ,tb.TABLE_TYPE AS 'TableType' ,col.ORDINAL_POSITION AS 'No' ,col.COLUMN_NAME AS 'ColumnName' ,col.DATA_TYPE AS 'DataType' ,CASE WHEN col.CHARACTER_MAXIMUM_LENGTH = -1 THEN 'MAX' ELSE LTRIM(STR(col.CHARACTER_MAXIMUM_LENGTH,10)) END AS 'Length' ,col.NUMERIC_SCALE AS 'NumericScale' ,col.NUMERIC_PRECISION AS 'NumericPrecision' ,col.COLUMN_DEFAULT AS 'Default' ,col.IS_NULLABLE AS 'Nullable' ,CASE WHEN COLUMNPROPERTY(object_id(tb.TABLE_NAME), col.COLUMN_NAME, 'IsIdentity') = 1 THEN 'YES' ELSE 'NO' END AS 'Identity' ,(SELECT value FROM sys.fn_listextendedproperty(NULL, 'schema', 'dbo', 'table', tb.TABLE_NAME, 'column', DEFAULT) WHERE name = 'MS_Description' AND objtype = 'COLUMN' AND objname COLLATE Chinese_Taiwan_Stroke_CI_AS = col.COLUMN_NAME) AS 'Description' ,CASE WHEN tbc.CONSTRAINT_NAME is not null THEN 'YES' ELSE 'NO' END AS 'PK' ,tbc.CONSTRAINT_NAME AS ' PkConstraint' ,CASE WHEN kcu1.CONSTRAINT_NAME is not null THEN 'YES' ELSE 'NO' END AS 'FK' ,kcu1.CONSTRAINT_NAME AS ' FkConstraint' ,kcu2.TABLE_NAME AS 'FkReferencedTable' ,kcu2.COLUMN_NAME AS 'FkReferencedColumn' FROM INFORMATION_SCHEMA.TABLES tb LEFT JOIN INFORMATION_SCHEMA.COLUMNS col ON (tb.TABLE_NAME = col.TABLE_NAME) LEFT JOIN ( INFORMATION_SCHEMA.REFERENTIAL_CONSTRAINTS AS rc INNER JOIN INFORMATION_SCHEMA.KEY_COLUMN_USAGE AS kcu1 ON kcu1.CONSTRAINT_CATALOG = rc.CONSTRAINT_CATALOG AND kcu1.CONSTRAINT_SCHEMA = rc.CONSTRAINT_SCHEMA AND kcu1.CONSTRAINT_NAME = rc.CONSTRAINT_NAME INNER JOIN INFORMATION_SCHEMA.KEY_COLUMN_USAGE AS kcu2 ON kcu2.CONSTRAINT_CATALOG = rc.UNIQUE_CONSTRAINT_CATALOG AND kcu2.CONSTRAINT_SCHEMA = rc.UNIQUE_CONSTRAINT_SCHEMA AND kcu2.CONSTRAINT_NAME = rc.UNIQUE_CONSTRAINT_NAME AND kcu2.ORDINAL_POSITION = kcu1.ORDINAL_POSITION ) ON (tb.TABLE_NAME = kcu1.TABLE_NAME AND col.COLUMN_NAME = kcu1.COLUMN_NAME) LEFT JOIN ( INFORMATION_SCHEMA.TABLE_CONSTRAINTS AS tbc INNER JOIN INFORMATION_SCHEMA.CONSTRAINT_COLUMN_USAGE AS colc ON colc.CONSTRAINT_NAME = tbc.CONSTRAINT_NAME AND colc.TABLE_NAME = tbc.TABLE_NAME AND tbc.CONSTRAINT_TYPE = 'PRIMARY KEY' ) ON (tb.TABLE_NAME = tbc.TABLE_NAME AND col.COLUMN_NAME = colc.COLUMN_NAME) ORDER BY tb.TABLE_NAME, col.ORDINAL_POSITION



參考資料
https://dotblogs.com.tw/wasichris/2016/07/07/004356

2018年6月1日 星期五

gride view 匯出excel

excel 匯出

1.using System.Web.UI;
2.
    public override void VerifyRenderingInServerForm(Control control)
    {
        //'XX'型別 必須置於有 runat=server 的表單標記之中
    }

3.
匯出一 :grid view

 protected void btnExport_Click(object sender, EventArgs e)
    {
        string filename = "satisfyQry_" + DateTime.Now.ToString("yyyyMMdd-HHmm") + ".xls";

        Response.Clear();
        Response.Charset = "utf-8";
        Response.ContentType = "application/vnd.ms-excel";
        Response.ContentEncoding = System.Text.Encoding.GetEncoding("utf-8");
        Response.Write("");
        System.IO.StringWriter stringWrite = new System.IO.StringWriter();
        System.Web.UI.HtmlTextWriter htmlWrite = new System.Web.UI.HtmlTextWriter(stringWrite);
        gvList.RenderControl(htmlWrite);
        Response.Write(stringWrite.ToString());
        Response.End();
    }

4.匯出二


      protected void btnExport_Click(object sender, EventArgs e)
    {
        string filename = "satisfyQry_" + DateTime.Now.ToString("yyyyMMdd-HHmm") + ".xls";

        Response.Clear();
        Response.Charset = "utf-8";
        Response.AddHeader(
            "Content-Disposition",
            "attachment;filename=" + Server.UrlEncode(filename)
            );
        Response.ContentType = "application/vnd.ms-excel";
        Response.ContentEncoding = System.Text.Encoding.GetEncoding("utf-8");
        Response.Write("");
        Response.Write("");
        Response.Write("");

        System.IO.StringWriter sw = new System.IO.StringWriter();
        System.Web.UI.HtmlTextWriter tw = new System.Web.UI.HtmlTextWriter(sw);




                #region header
                sw.WriteLine(@"
非常滿意

        滿意
        普通
        不滿意
        很不滿意
                                     
                                   
                                       
");                #endregion
                #region detail
                for (int i = 0; i < gvList.Rows.Count; i++)
                {
                    sw.WriteLine(" " + gvList.Rows[i].Cells[0].ToString()
                      gvList.Rows[i].Cells.
                        + "
" + gvList.Rows[i]["isi_icusname"].ToString()                        + "
" + gvList.Rows[i]["isi_icuscode"].ToString()                        + "
" + gvListdt.Rows[i]["isi_prerevenue"].ToString()                        + "
" + gvListdt.Rows[i]["isi_equname"].ToString()                        + "
" + gvListdt.Rows[i]["Status"].ToString()                        + "
" + gvListdt.Rows[i]["pos_invno"].ToString()
                        + "
");                }
                #endregion

        sw.WriteLine("
");        Response.Write("
");

          Response.Write(sw.ToString());
            Response.Write("
");        Response.Write("
");

        Response.End();
    }

2017年10月17日 星期二

使用T-SQL 匯出 DB Schema (表格名稱.欄位名稱.資料型別.長度.預設值.是否允許空值.欄位描述)

USE  資料庫名稱;

SELECT a.Table_schema +'.'+a.Table_name   as 表格名稱  
       ,b.COLUMN_NAME                     as 欄位名稱  
       ,b.DATA_TYPE                       as 資料型別  
       ,isnull(b.CHARACTER_MAXIMUM_LENGTH,'') as 長度  
       ,isnull(b.COLUMN_DEFAULT,'')           as 預設值  
       ,b.IS_NULLABLE                         as 是否允許空值  
       ,( SELECT value  
          FROM fn_listextendedproperty (NULL, 'schema', a.Table_schema, 'table', a.TABLE_NAME, 'column', default)  
          WHERE name='MS_Description' and objtype='COLUMN'  
          and objname Collate Chinese_Taiwan_Stroke_CI_AS = b.COLUMN_NAME  
        ) as 欄位描述  
FROM INFORMATION_SCHEMA.TABLES  a  
 LEFT JOIN INFORMATION_SCHEMA.COLUMNS b ON a.TABLE_NAME = b.TABLE_NAME  
WHERE TABLE_TYPE='BASE TABLE'
ORDER BY a.TABLE_NAME , b.ORDINAL_POSITION


網路上找到了語法. 
可以產生DD , 但是我沒有習慣在建table 時加上描述, 就少了中文欄位的說明, 
實在是太可惜了, 找時間還是要來把資料表的說明建起來
以後做DD就直接語法匯出整理一下就好了.

資料來源: 
http://alvisprogramming.blogspot.tw/2014/12/t-sql-db-schema.html

2015年7月13日 星期一

抓副檔名

使用者上傳的檔名, 有時會利用系統的編碼重新命名.
此時要抓上傳檔案的副檔名.

但若使用者在檔名若有多加點.來做檔案命名.
就容易抓錯.

在SQL中利用下面的寫法. 可以抓到正確的檔名.

[結果: .doc]
DECLARE @x VARCHAR(32) = 'aaa.bbb.ccc.1.doc'
SELECT Right(@x, CHARINDEX('.', REVERSE(@x)))


[結果: aaa.]
DECLARE @x VARCHAR(32) = 'aaa.bbb.ccc.1.doc'
SELECT left(@x, CHARINDEX('.', REVERSE(@x)))

2015年7月10日 星期五

SQL如何查詢『換行符號』

SQL如何查詢『換行符號』呢?
→ where id like '%'+char(10)+'%'

CHAR可用於將控制字符插入字符串中。下表顯示了一些常用的控制字符。
控制鍵值如下所示
Tab: CHAR(9)
換行: CHAR(10)
ENTER: CHAR(13)


EX:
Select * From Table_Name
Where 1=1 And Column_NAME Like '%'+Cgar(13)+'%'

update base_mapping set basename = replace(basename,Char(10),'')
update base_mapping set basename = replace(basename,Char(13),'')




別人寫的很好. 自己有需要. 
所以備份一下. 
資料來源: http://www.dotblogs.com.tw/dreamweaver0210/archive/2014/05/06/144986.aspx