本帖最後由 阿達金田一 於 2025-2-8 12:08 編輯
我前面回文說的 SQL , SQL Server 並沒有說的很清楚
所以可以先不用糾結 SQL
只要先查清楚 , 會計軟體 有沒有要依賴什麼 資料庫系統
因為 會計軟體 也可以不依賴 資料庫系統
而是本身有自己的 資料庫檔案 存取方式
而 SQL資料庫 不只有 SQL Server , 另外也有 MySQL
不過就這2個比較有名...其它的我就不知道
註:
其實 Office Access 也是資料庫 , 但我覺的它更多是應用在 Office 相關上
而不是程式設計...所以就不算進去
我之前是以 SQL Server 為例子, 針對 SQL Server 回答
因為我覺的用這個可能性比較大
而且我本身沒在用 SQL , 之前回文時忘了還有 MySQL
之前回文的意思是 會計軟體 是否有用到 資料庫系統
如果有 資料庫系統 是否是用 SQL Server
還是其它 資料庫系統 (例如 MySQL)
如果是用 SQL Server , 那 會計軟體 是否有自帶 SQL Server
不管有帶沒帶 , 但可以想的到
1. 沒帶 , 那就是要自行安裝 SQL Server
2. 有帶 , 那就是有 Windows 和 SQL Server 版本支援問題
如果 SQL 不是 2022 2019 2017 這3個版本
那很可能不能在 Win11 上正常安裝運作
( 另外 .NF 和 SQL 也有版本支援問題 ...後面會說到 )
Windows 和 SQL Server 講簡單點就是
依表 https://learn.microsoft.com/zh-tw/troubleshoot/sql/database-engine/install/windows/use-sql-server-in-windows
Win11 只能跑 SQL Server 2022 2019 2017 , 其它舊的不行
Win10 能跑 SQL Server 2022 2019 2017 2016 2014 2012
以上是 會計軟體 是否有依賴 資料庫系統 的問題
以下 .NF 3.5/2.0 問題
反正回到問題本身 , 結論也只是 , 是否要安裝 .NF 3.5
如果不清楚 , 那就安裝 .NF 3.5 就好 , 反正用不到也沒事
就像為了玩遊戲 , 提前安裝 DirectX , vc redist 這一些遊戲常用元件
其實不一定會用到 , 但如果會用到時就不在特意去安裝了
所以提前說一下, 後面有說到一點程式相關的東西
下面說的其實可以不看 , 因為只是說一下原因
( 而且打太長, 可能有一些誤寫的地方 )
有興趣的 , 大概理解一下原因就好 , 可以不用深究
因為我也不會 就只是能理解而以
另外我說的也只是我的理解 , 所以也不一定正確
主要只是用來理解而以 , 所以只是說個大概
SQL 和 資料庫 , 把它想成 DirectX 和 繪圖
SQL 只是一個 介面/語言 可以想成 資料庫 的 API (應該算是)
就像 DirectX 是繪圖用的 API ( 但繪圖API 還有 OpenGL 和 Vulkan 等等 )
而遊戲就是用 DirectX API 調用 DirectX 去繪圖
先說一下我不會 SQL , 也沒用過 C# 寫 SQL 相關的程式
所以這裡只是簡單分析一下
我貼個 M$ 的範例 , 這是 C# 用 SQL Server 建立資料庫
https://learn.microsoft.com/zh-tw/troubleshoot/developer/visualstudio/csharp/language-compilers/create-sql-server-database-programmatically
C# 用 System.Data.SqlClient 的功能就是程式用了 .NF 相關 SQL Client 的功能 ( SQL Server )
如果是用 MySQL , 要先對 C# 安裝 MySQL 相關的功能
然後用 MySql.Data.MySqlClient , 可以參考
https://ithelp.ithome.com.tw/articles/10332732
並用 SqlConnection 和 SqlCommand , 連接 SQL Server 和 傳送 SQL指令
(這2個就是 SQL Client 功能 提供的相關函式)
其中 SqlConnection 的引數
"Server=localhost;Integrated security=SSPI;database=master"
和
SqlCommand 中的 Str
也就是 "CREATE DATABASE MyDatabase ON PRIMARY ".....
就是 SQL 指令
如果換成別的程式語言 , 處理 SQL Server
只要能對 SQL Server 下指令(就像 C# 提供的 System.Data.SqlClient)
SQL指令 基本都是一樣 (因為都是對 SQL Server 下 SQL指令)
而 C# 中用的 System.Data.SqlClient 這些其實都是 .NF 的功能
( C# 基本上就是用 .NF 的功能在寫程式 )
所以這就要看 C#程式 , 本身設定是使用 那一版本的 .NF
因此 .NF 問題 , 我個人推測
應該是和 會計軟體的程式 比較有關
和 SQL 比較無關
因為對 SQL 來說就只是下達 SQL指令, 只要 SQL指令 語法上 沒有大變動
不過 .NF 和 SQL Server 也有版本和支援的問題
https://learn.microsoft.com/zh-tw/troubleshoot/sql/database-engine/install/windows/understanding-dotnet-framework-requirements
簡單說就是
SQL Server 2014 以前 .NF 3.5 就 ok
SQL Server 2016~2022 以後用 4.8 就 ok ( 2016 要 4.6 , 2022 要 4.72 )
也就是 , 如果 軟體 是用 .NF 3.5
那就表示大概是用 SQL 2014 以前的版本
( 因為如果 軟體 對應是用 SQL Server 2016 後的 , 那大概會用 .NF 4.x )
也就是 那怕 win11 安裝了 .NF 3.5,
SQL 2014 也可能不能在 win11 運作
( 前面說過了 win11 支援 SQL Server 2022 2019 2017 )
但 Win10 可以跑 SQL Server 2022 2019 2017 2016 2014 2012
也就是, 如果只討論目前的相容性 , 用 Win10 會比較好
Win10 開啟/安裝 .NF 3.5 ( Win10 22H2 預設有開啟 4.8 了 )
那基本 SQL Server 2012 到 2022 都可以用
這就是我之前回文會說
瞎猜...可能原因和不可控因素太多
所以最好先查資料 , 清楚 會計軟體 本身的環境需求
主要就是依賴環境 , 不清楚的情況下
基本上推測 可能相關的就是 .NF 和 資料庫 , 但不排除還有其它
C# - SQL Server 大概流程結構
(可能說的不一定對, 但大概意思應該就這樣)
C# 用 .NF 下 SQL指令 給 SQL Server , SQL Server 依指令處理資料庫
C# -> .NF -> SQL 指令 -> SQL Server -> 資料庫
單純的 SQL 其實是指 SQL語言 , SQL 就是一種 資料庫語言
這和 程式語言 的 Basic , C++ , C# 差不多意思 , 就只是 語言
像 C++ , 有 VC++ , Dev-C++ ... 等等
只不過現在大部份在說程式語言是包含其背後的編譯系統
而且像 C# 基本上只有 VC# (因為 C# 是微軟出的)
C# , C++ 其實就是 C語言的基礎上進化來的
像 Javascript 我個人感覺基礎也是類 C語言 的語法
當然就算並礎同樣是類 C語言 , 一定有很多差異
因為只是套用了語法習慣 , 不是語法完全相同
各程式語言也會有自己的東西 (語法 指令 函式 編譯...等等)
所以 SQL 除了 SQL Server 也有其它用 SQL 的 資料庫系統 , 例如 MySQL
同樣 SQL Server 和 MySQL , 雖然都用 SQL , 但不代表用的 SQL指令 就完全一樣
(不過應該不會像 程式語言 那樣差很多)
可以參考
https://aws.amazon.com/tw/compare/the-difference-between-sql-and-mysql/
有的 會計軟體 也可能用其它資料庫 而不是 SQL
或是 不用資料庫系統 , 而是有自訂格式的資料庫檔案
所以我才說 , 如果會計軟體有官網可以查資料 , 最好先去查一下資料
就像遊戲也是要知道
基本硬體配置 , DirectX 版本...
要依賴的相關元件 , 例如 vc redist |