優化SQL查詢+UI顯示修正
This commit is contained in:
parent
fb2ae757bb
commit
979cb30a7b
@ -2,6 +2,8 @@ using MySqlConnector;
|
|||||||
using DBObj;
|
using DBObj;
|
||||||
using System.Globalization;
|
using System.Globalization;
|
||||||
using System.IO;
|
using System.IO;
|
||||||
|
using System.Diagnostics;
|
||||||
|
|
||||||
namespace DualScreenDemo{
|
namespace DualScreenDemo{
|
||||||
public partial class PrimaryForm
|
public partial class PrimaryForm
|
||||||
{
|
{
|
||||||
@ -9,11 +11,16 @@ namespace DualScreenDemo{
|
|||||||
{
|
{
|
||||||
List<SongData> searchResults = new List<SongData>();
|
List<SongData> searchResults = new List<SongData>();
|
||||||
Console.WriteLine(query);
|
Console.WriteLine(query);
|
||||||
string connectionString = "Server=192.168.22.170;Port=3306;Database=Karaoke-Kingpin;User=Karaoke-Kingpin;Password=ESM7yTPMnavFmbBH;";
|
string connectionString = "Server=192.168.11.4;Port=3306;Database=Karaoke-Kingpin;User=Karaoke-Kingpin;Password=ESM7yTPMnavFmbBH;";
|
||||||
|
|
||||||
using (var connection = new MySqlConnection(connectionString))
|
using (var connection = new MySqlConnection(connectionString))
|
||||||
{
|
{
|
||||||
|
Stopwatch stopwatch = new Stopwatch();
|
||||||
|
|
||||||
connection.Open();
|
connection.Open();
|
||||||
|
|
||||||
|
stopwatch.Start();
|
||||||
|
|
||||||
Console.WriteLine("MyDB 連線成功!");
|
Console.WriteLine("MyDB 連線成功!");
|
||||||
|
|
||||||
using (var command = new MySqlCommand(query, connection))
|
using (var command = new MySqlCommand(query, connection))
|
||||||
@ -75,7 +82,9 @@ namespace DualScreenDemo{
|
|||||||
}
|
}
|
||||||
|
|
||||||
connection.Close();
|
connection.Close();
|
||||||
Console.WriteLine("MyDB 連線已關閉!");
|
stopwatch.Stop();
|
||||||
|
Console.WriteLine($"MyDB 連線已關閉!執行時間: {stopwatch.ElapsedMilliseconds} 毫秒");
|
||||||
|
Console.WriteLine($"查詢到 {searchResults.Count} 筆資料。");
|
||||||
}
|
}
|
||||||
|
|
||||||
return searchResults;
|
return searchResults;
|
||||||
@ -84,7 +93,7 @@ namespace DualScreenDemo{
|
|||||||
public List<Artist> SearchSingers_Mysql(string query){
|
public List<Artist> SearchSingers_Mysql(string query){
|
||||||
List<Artist> searchResults = new List<Artist>();
|
List<Artist> searchResults = new List<Artist>();
|
||||||
Console.WriteLine(query);
|
Console.WriteLine(query);
|
||||||
string connectionString = "Server=192.168.22.170;Port=3306;Database=Karaoke-Kingpin;User=Karaoke-Kingpin;Password=ESM7yTPMnavFmbBH;";
|
string connectionString = "Server=192.168.11.4;Port=3306;Database=Karaoke-Kingpin;User=Karaoke-Kingpin;Password=ESM7yTPMnavFmbBH;";
|
||||||
|
|
||||||
using (var connection = new MySqlConnection(connectionString))
|
using (var connection = new MySqlConnection(connectionString))
|
||||||
{
|
{
|
||||||
|
@ -342,7 +342,8 @@ namespace DualScreenDemo
|
|||||||
// 顯示包廂名稱
|
// 顯示包廂名稱
|
||||||
// 取主機名稱的最後 20 個字元 (如果長度不足 20,則取全部)
|
// 取主機名稱的最後 20 個字元 (如果長度不足 20,則取全部)
|
||||||
string displayName = "包廂" + hostName.Substring(Math.Max(0, hostName.Length - 20));
|
string displayName = "包廂" + hostName.Substring(Math.Max(0, hostName.Length - 20));
|
||||||
string pageNumber = (multiPagePanel.currentPageIndex + 1).ToString() + "/" + (multiPagePanel.totalPages).ToString();
|
string totalPages = multiPagePanel.totalPages.ToString() == "0" ? "1" : multiPagePanel.totalPages.ToString();
|
||||||
|
string pageNumber = (multiPagePanel.currentPageIndex + 1).ToString() + "/" + totalPages;
|
||||||
// 設定字型:
|
// 設定字型:
|
||||||
// "微軟正黑體",大小 24,粗體 (Bold)
|
// "微軟正黑體",大小 24,粗體 (Bold)
|
||||||
Font font = new Font("微軟正黑體", 24, FontStyle.Bold);
|
Font font = new Font("微軟正黑體", 24, FontStyle.Bold);
|
||||||
|
@ -521,7 +521,10 @@ namespace DualScreenDemo
|
|||||||
}
|
}
|
||||||
private void FindZhuYiSingers(){
|
private void FindZhuYiSingers(){
|
||||||
string searchText = inputBoxZhuYinSingers.Text;
|
string searchText = inputBoxZhuYinSingers.Text;
|
||||||
string query = $"SELECT * FROM ArtistLibrary WHERE `歌手注音` LIKE '{searchText}%' ";
|
string query = string.IsNullOrWhiteSpace(searchText)
|
||||||
|
? "SELECT * FROM ArtistLibrary LIMIT 50;"
|
||||||
|
: $"SELECT * FROM ArtistLibrary WHERE `歌手注音` LIKE '{searchText}%';";
|
||||||
|
//string query = $"SELECT * FROM ArtistLibrary WHERE `歌手注音` LIKE '{searchText}%' ";
|
||||||
var searchResults = SearchSingers_Mysql(query);
|
var searchResults = SearchSingers_Mysql(query);
|
||||||
|
|
||||||
currentPage = 0;
|
currentPage = 0;
|
||||||
|
@ -271,7 +271,10 @@ namespace DualScreenDemo
|
|||||||
}
|
}
|
||||||
private void FindEnglishSingers(){
|
private void FindEnglishSingers(){
|
||||||
string searchText = inputBoxEnglishSingers.Text;
|
string searchText = inputBoxEnglishSingers.Text;
|
||||||
string query = $"SELECT * FROM ArtistLibrary WHERE `歌手姓名` LIKE '{searchText}%' ";
|
string query = string.IsNullOrWhiteSpace(searchText)
|
||||||
|
? "SELECT * FROM ArtistLibrary LIMIT 50;"
|
||||||
|
: $"SELECT * FROM ArtistLibrary WHERE `歌手姓名` LIKE '{searchText}%';";
|
||||||
|
//string query = $"SELECT * FROM ArtistLibrary WHERE `歌手姓名` LIKE '{searchText}%' ";
|
||||||
var searchResults = SearchSingers_Mysql(query);
|
var searchResults = SearchSingers_Mysql(query);
|
||||||
|
|
||||||
currentPage = 0;
|
currentPage = 0;
|
||||||
|
@ -289,7 +289,10 @@ namespace DualScreenDemo
|
|||||||
}
|
}
|
||||||
private void FindHandwritingSingers(){
|
private void FindHandwritingSingers(){
|
||||||
string searchText = handwritingInputBoxForSingers.Text;
|
string searchText = handwritingInputBoxForSingers.Text;
|
||||||
string query = $"SELECT * FROM ArtistLibrary WHERE `歌手姓名` LIKE '{searchText}%' ";
|
string query = string.IsNullOrWhiteSpace(searchText)
|
||||||
|
? "SELECT * FROM ArtistLibrary LIMIT 50;"
|
||||||
|
: $"SELECT * FROM ArtistLibrary WHERE `歌手姓名` LIKE '{searchText}%';";
|
||||||
|
//string query = $"SELECT * FROM ArtistLibrary WHERE `歌手姓名` LIKE '{searchText}%' ";
|
||||||
var searchResults = SearchSingers_Mysql(query);
|
var searchResults = SearchSingers_Mysql(query);
|
||||||
|
|
||||||
currentPage = 0;
|
currentPage = 0;
|
||||||
|
@ -175,7 +175,10 @@ namespace DualScreenDemo
|
|||||||
string searchText = inputBoxPinYinSingers.Text;
|
string searchText = inputBoxPinYinSingers.Text;
|
||||||
// 在這裡添加搜尋歌曲的邏輯
|
// 在這裡添加搜尋歌曲的邏輯
|
||||||
// 例如:根據輸入框的內容搜尋歌曲
|
// 例如:根據輸入框的內容搜尋歌曲
|
||||||
string query = $"SELECT * FROM SongLibrary WHERE `歌星A拼音` LIKE '{searchText}%' OR `歌星B拼音` LIKE '{searchText}%' ";
|
string query = string.IsNullOrWhiteSpace(searchText)
|
||||||
|
? "SELECT * FROM SongLibrary ORDER BY `點播次數` DESC LIMIT 200;"
|
||||||
|
: $"SELECT * FROM SongLibrary WHERE `歌星A拼音` LIKE '{searchText}%' OR `歌星B拼音` LIKE '{searchText}%' ";
|
||||||
|
//string query = $"SELECT * FROM SongLibrary WHERE `歌星A拼音` LIKE '{searchText}%' OR `歌星B拼音` LIKE '{searchText}%' ";
|
||||||
|
|
||||||
var searchResults = SearchSongs_Mysql(query);
|
var searchResults = SearchSongs_Mysql(query);
|
||||||
// 重置分頁
|
// 重置分頁
|
||||||
|
@ -309,7 +309,9 @@ namespace DualScreenDemo
|
|||||||
string searchText = inputBoxZhuYinSongs.Text;
|
string searchText = inputBoxZhuYinSongs.Text;
|
||||||
// 在這裡添加搜尋歌曲的邏輯
|
// 在這裡添加搜尋歌曲的邏輯
|
||||||
// 例如:根據輸入框的內容搜尋歌曲
|
// 例如:根據輸入框的內容搜尋歌曲
|
||||||
string query = $"SELECT * FROM SongLibrary WHERE `歌曲注音` LIKE '{searchText}%' ";
|
string query = string.IsNullOrWhiteSpace(searchText)
|
||||||
|
? "SELECT * FROM SongLibrary ORDER BY `點播次數` DESC LIMIT 200;"
|
||||||
|
: $"SELECT * FROM SongLibrary WHERE `歌曲注音` LIKE '{searchText}%' ORDER BY `點播次數` DESC;";
|
||||||
|
|
||||||
var searchResults = SearchSongs_Mysql(query);
|
var searchResults = SearchSongs_Mysql(query);
|
||||||
// 重置分頁
|
// 重置分頁
|
||||||
|
@ -228,9 +228,10 @@ namespace DualScreenDemo
|
|||||||
}
|
}
|
||||||
private void FindEnglishSongs(){
|
private void FindEnglishSongs(){
|
||||||
string searchText = inputBoxEnglishSongs.Text;
|
string searchText = inputBoxEnglishSongs.Text;
|
||||||
// 在這裡添加搜尋歌曲的邏輯
|
// 檢查是否為空字串或空白字元
|
||||||
// 例如:根據輸入框的內容搜尋歌曲
|
string query = string.IsNullOrWhiteSpace(searchText)
|
||||||
string query = $"SELECT * FROM SongLibrary WHERE `歌曲名稱` LIKE '{searchText}%' ";
|
? "SELECT * FROM SongLibrary ORDER BY `點播次數` DESC LIMIT 200;"
|
||||||
|
: $"SELECT * FROM SongLibrary WHERE `歌曲名稱` LIKE '{searchText}%' ORDER BY `點播次數` DESC;";
|
||||||
|
|
||||||
var searchResults = SearchSongs_Mysql(query);
|
var searchResults = SearchSongs_Mysql(query);
|
||||||
// 重置分頁
|
// 重置分頁
|
||||||
|
@ -286,7 +286,10 @@ namespace DualScreenDemo
|
|||||||
string searchText = handwritingInputBoxForSongs.Text;
|
string searchText = handwritingInputBoxForSongs.Text;
|
||||||
// 在這裡添加搜尋歌曲的邏輯
|
// 在這裡添加搜尋歌曲的邏輯
|
||||||
// 例如:根據輸入框的內容搜尋歌曲
|
// 例如:根據輸入框的內容搜尋歌曲
|
||||||
string query = $"SELECT * FROM SongLibrary WHERE `歌曲名稱` LIKE '{searchText}%' ";
|
string query = string.IsNullOrWhiteSpace(searchText)
|
||||||
|
? "SELECT * FROM SongLibrary ORDER BY `點播次數` DESC LIMIT 200;"
|
||||||
|
: $"SELECT * FROM SongLibrary WHERE `歌曲名稱` LIKE '{searchText}%' ORDER BY `點播次數` DESC;";
|
||||||
|
|
||||||
|
|
||||||
var searchResults = SearchSongs_Mysql(query);
|
var searchResults = SearchSongs_Mysql(query);
|
||||||
// 重置分頁
|
// 重置分頁
|
||||||
|
@ -545,6 +545,11 @@ namespace DualScreenDemo
|
|||||||
string searchText = inputBoxSongIDSearch.Text;
|
string searchText = inputBoxSongIDSearch.Text;
|
||||||
// 在這裡添加搜尋歌曲的邏輯
|
// 在這裡添加搜尋歌曲的邏輯
|
||||||
// 例如:根據輸入框的內容搜尋歌曲
|
// 例如:根據輸入框的內容搜尋歌曲
|
||||||
|
if (string.IsNullOrEmpty(searchText))
|
||||||
|
{
|
||||||
|
// 如果輸入框為空,則不進行搜尋
|
||||||
|
return;
|
||||||
|
}
|
||||||
string query = $"SELECT * FROM SongLibrary WHERE `歌曲編號` = '{searchText}' ";
|
string query = $"SELECT * FROM SongLibrary WHERE `歌曲編號` = '{searchText}' ";
|
||||||
|
|
||||||
var searchResults = SearchSongs_Mysql(query);
|
var searchResults = SearchSongs_Mysql(query);
|
||||||
|
@ -265,8 +265,9 @@ namespace DualScreenDemo
|
|||||||
string searchText = inputBoxPinYinSongs.Text;
|
string searchText = inputBoxPinYinSongs.Text;
|
||||||
// 在這裡添加搜尋歌曲的邏輯
|
// 在這裡添加搜尋歌曲的邏輯
|
||||||
// 例如:根據輸入框的內容搜尋歌曲
|
// 例如:根據輸入框的內容搜尋歌曲
|
||||||
string query = $"SELECT * FROM SongLibrary WHERE `歌曲拼音` LIKE '{searchText}%' ";
|
string query = string.IsNullOrWhiteSpace(searchText)
|
||||||
|
? "SELECT * FROM SongLibrary ORDER BY `點播次數` DESC LIMIT 200;"
|
||||||
|
: $"SELECT * FROM SongLibrary WHERE `歌曲拼音` LIKE '{searchText}%' ORDER BY `點播次數` DESC;";
|
||||||
var searchResults = SearchSongs_Mysql(query);
|
var searchResults = SearchSongs_Mysql(query);
|
||||||
// 重置分頁
|
// 重置分頁
|
||||||
currentPage = 0;
|
currentPage = 0;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user