2022年1月21日 星期五

VS code 無法連線 MySQL 8 解決

 

連線錯誤訊息:

ER_NOT_SUPPORTED_AUTH_MODE:client does not support authentication protocol requested by server,consider upgrading mysql client

解決方法:
mysql> ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'your_new_password';
mysql> FLUSH PRIVILEGES;
mysql> quit


2020年12月23日 星期三

SQL Server Express 如何設定TCP/IP連線


1.點選【資料庫】/滑鼠右鍵【屬性】

2.切換到【安全性】/勾選【SQL server及Windws驗證模式】/【確定】

3.到檔案總管,點選【本機】/按【滑鼠右鍵】選【管理】

4.找到SQLExpress的通訊協定,將TCP/IP點選,按滑鼠右鍵選【啟用】

5.出現要重新啟動,改的設定才會有效

6.接著點選滑鼠右鍵/選【內容】

7.切換到【IP位置】/將TCP Dynamic Ports 的0清空,TCP Port輸入1433,【確定】

8.找到【SQL Server服務】,在SQL server點選滑鼠右鍵/【停止】

9.在停止的SQL Server按滑鼠右鍵,選【啟用】,這樣就可以正常使用了

from: http://wordpress.bestdaylong.com/blog/archives/19735 

2020年11月26日 星期四

SQL條件判斷式 Case When Then

 

Case When Then 可以說是 SQL的  IF 判斷式

大致上語法如下


Select Case (要判斷的欄位)

  When ('條件1') Then ('結果1')

  When ('條件2') Then ('結果2')

  ...

  (Else "結果N")

  End

From TableA



2020年4月29日 星期三

在GridView中加入自動編號的序號

參考: https://blog.xuite.net/xiaolian/blog/46204394-%E5%9C%A8GridView%E4%B8%AD%E5%8A%A0%E5%85%A5%E8%87%AA%E5%8B%95%E7%B7%A8%E8%99%9F%E7%9A%84%E5%BA%8F%E8%99%9F

在Aspx檔案中GridView表格內插入一個欄位,在第一欄加上TemplateField的欄位,語法如下:

流水號從第一筆編起
  <asp:TemplateField HeaderText="序號">
          <ItemTemplate>
             <%#GridView1.PageIndex * GridView1.PageSize + GridView1.Rows.Count + 1%>
           </ItemTemplate>
           <HeaderStyle Wrap="False"  />
            <ItemStyle  HorizontalAlign="Center" VerticalAlign="Middle" />
  </asp:TemplateField>

OR

  <asp:TemplateField HeaderText="序號">
         <ItemTemplate>
            <%#Container.DataItemIndex + 1%>
         </ItemTemplate>
         <HeaderStyle Wrap="False"  />
         <ItemStyle  HorizontalAlign="Center" VerticalAlign="Middle" />
  </asp:TemplateField>


流水號每頁從1編起
   <asp:TemplateField HeaderText="序號">
           <ItemTemplate>
              <%#Container.DisplayIndex + 1%>
            </ItemTemplate>
            <HeaderStyle Wrap="False"  />
            <ItemStyle HorizontalAlign="Center" VerticalAlign="Middle" />
   </asp:TemplateField>
 

2019年5月14日 星期二

SQL 日期格式



1. date和datetime类型的区别

date是SQL Server 2008新引进的数据类型。它表示一个日期,不包含时间部分,可以表示的日期范围从公元元年1月1日到9999年12月31日。只需要3个字节的存储空间。
dateTime 日期和时间部分,可以表示的日期范围从公元1753年1月1日00:00:00.000 到9999年12月31日23:59:59.997 ,精确到3.33毫秒,它需要8个字节的存储空间。

2. GETDATE()函数,返回当前日期时间(datetime类型)

SELECT GETDATE();
返回
2017-03-16 09:10:08.947
例如创建表格M
CREATE TABLE [dbo].[M](
    [id] [int] NULL,
    [日期] [date] NULL,
    [时间] [datetime] NULL
) ON [PRIMARY]
可以使用GETDATE()函数插入数据
INSERT INTO M(id, 日期, 时间) VALUES (1, CONVERT(VARCHAR, GETDATE(), 110), GETDATE());

3. CONVERT()函数,格式化日期

CONVERT() 函数是把日期转换为新数据类型的通用函数,也可以用不同的格式显示日期/时间数据。
语法:
CONVERT(data_type(length),date,style)
  • data_type(length) 规定目标数据类型(带有可选的长度)。date指需要转换的值。style 规定日期/时间的输出格式。
  • 可以使用的 style 值:当前时间2017年1月3日 09:09:10:037
Style IDSQL对应格式
1SELECT CONVERT(varchar(100), GETDATE(), 1);01/03/17
2SELECT CONVERT(varchar(100), GETDATE(), 2);17.01.03
3SELECT CONVERT(varchar(100), GETDATE(), 3);03/01/17
4SELECT CONVERT(varchar(100), GETDATE(), 4);03.01.17
5SELECT CONVERT(varchar(100), GETDATE(), 5);03-01-17
6SELECT CONVERT(varchar(100), GETDATE(), 6);03 01 17
7SELECT CONVERT(varchar(100), GETDATE(), 7);01 03, 17
8SELECT CONVERT(varchar(100), GETDATE(), 8);09:09:10
9SELECT CONVERT(varchar(100), GETDATE(), 9);01 3 2017 9:09:10:037AM
10SELECT CONVERT(varchar(100), GETDATE(), 10);01-03-17
11SELECT CONVERT(varchar(100), GETDATE(), 11);17/01/03
12SELECT CONVERT(varchar(100), GETDATE(), 12);170103
13SELECT CONVERT(varchar(100), GETDATE(), 13);03 01 2017 09:09:10:037
14SELECT CONVERT(varchar(100), GETDATE(), 14);09:09:10:037
20SELECT CONVERT(varchar(100), GETDATE(), 20);2017-01-03 09:09:10
21SELECT CONVERT(varchar(100), GETDATE(), 21);2017-01-03 09:09:10.037
22SELECT CONVERT(varchar(100), GETDATE(), 22);01/03/17 9:09:10 AM
23SELECT CONVERT(varchar(100), GETDATE(), 23);2017-01-03
24SELECT CONVERT(varchar(100), GETDATE(), 24);09:09:10
25SELECT CONVERT(varchar(100), GETDATE(), 25);2017-01-03 09:09:10.037
100SELECT CONVERT(varchar(100), GETDATE(), 100);01 3 2017 9:09AM
101SELECT CONVERT(varchar(100), GETDATE(), 101);01/03/2017
102SELECT CONVERT(varchar(100), GETDATE(), 102);2017.01.03
103SELECT CONVERT(varchar(100), GETDATE(), 103);03/01/2017
104SELECT CONVERT(varchar(100), GETDATE(), 104);03.01.2017
105SELECT CONVERT(varchar(100), GETDATE(), 105);03-01-2017
106SELECT CONVERT(varchar(100), GETDATE(), 106);03 01 2017
107SELECT CONVERT(varchar(100), GETDATE(), 107);01 03, 2017
108SELECT CONVERT(varchar(100), GETDATE(), 108);09:09:10
109SELECT CONVERT(varchar(100), GETDATE(), 109);01 3 2017 9:09:10:037AM
110SELECT CONVERT(varchar(100), GETDATE(), 110);01-03-2017
111SELECT CONVERT(varchar(100), GETDATE(), 111);2017/01/03
112SELECT CONVERT(varchar(100), GETDATE(), 112);20170103
113SELECT CONVERT(varchar(100), GETDATE(), 113);03 01 2017 09:09:10:037
114SELECT CONVERT(varchar(100), GETDATE(), 114);09:09:10:037
120SELECT CONVERT(varchar(100), GETDATE(), 120);2017-01-03 09:09:10
121SELECT CONVERT(varchar(100), GETDATE(), 121);2017-01-03 09:09:10.037
126SELECT CONVERT(varchar(100), GETDATE(), 126);2017-01-03T09:09:10.037
130SELECT CONVERT(varchar(100), GETDATE(), 130);5 ???? ?????? 1438 9:09:10:037AM
131SELECT CONVERT(varchar(100), GETDATE(), 131);5/04/1438 9:09:10:037AM



REF:https://www.cnblogs.com/rainman/p/6558261.html

SSMS修改資料表出現"不允許儲存變更,您所做的變更要求下列資料表必須先卸除然後再重新建立。"(SQL 14)

解決方法: 工具→選項→設計師→取消勾選【防止儲存需要資料表重建的變更】 原因: 預設 SQL Server Management Studio 會禁止使用者進行需要資料表重建的變更。這些動作包括: 將新的資料行加入資料表的中間 卸除資料行 變更資料行的 Null 屬性 變更資料行的順序 變更資料行的資料類型 參考連結

2019年3月11日 星期一

word加千分符號

進入表格內, 插入(I)/ 數字(E), 寫入數字 譬如 54321 選 1, 2, 3, ..... 確定 還是得到 54321 滑鼠點入,整個變成灰色區 按 shift-F9 出現公式 { 54321 \* Arabic } 滑鼠點入 改成 { 54321 \# ##,##0 } 按F9 得到 54,321 完成 記得 word的函數公式都是 手動的 ,要經常按 F9 才會得到你要的東西。