我相信你正在尋找的是使用SQL
Update table set Priority = Priority + 1 where Priority >= @InputtedPriority
然後,您將需要從數據庫中任何超過10
DELETE FROM table where Priority > 10
刪除編輯
一個簡單的更新查詢
由於閱讀了更多評論,它看起來像你需要運行SQL的第一行來更新你的表來移動p周圍的喧囂。一個簡單的SqlCommand和SQL服務器上的存儲過程將解決您的問題。對於執行SqlCommands和過程,快速查看SO應該不會太難找到您要查找的內容。
EDIT2
一個簡單的代碼例如,如果從下拉列表中選擇的優先級號碼30並將其設置爲priority
然後應上傳的圖像將是30和圖像,其是存在於30將移動到31等,優先級爲50的圖像將變爲51.此代碼假定ID爲IDENTIY
列。
string imageName;
string description;
string path;
int priority;
//(snip) populate the variables
const string query = "Update imagesTable set Priority = Priority + 1 where Priority >= @Priority;" +
"insert into imagesTable (ImageName, Description, Path, Priority) values (@ImageName, @Description, @Path, @Priority)";
using (var connection = new SqlConnection(connectionString))
using (var command = new SqlCommand(query, connection))
{
connection.Open();
command.Parameters.AddWithValue("@ImageName", imageName);
command.Parameters.AddWithValue("@Description", description);
command.Parameters.AddWithValue("@Path", path);
command.Parameters.AddWithValue("@Priority", priority);
command.ExecuteNonQuery();
}
您可以包含存儲圖像和優先級的數據庫表的模式嗎? – EkoostikMartin
海事組織你不應該關心存儲圖像的順序。只要你存儲了正確的圖像優先級,你可以按照你想要的順序查詢它們,方法是追加一個'ORDER BY priority'子句 – Omar
我想我不清楚你們是誰 這只是一個例子:: 假設我的數據庫中有50張圖片,其優先級爲 現在,如果我想上傳新圖片,它的優先級應該是51,但是如果我從下拉列表中選擇優先級數字30 ,那麼應該上傳的圖片將是30和圖片其中 出現在30移到31等等,並且優先成像在50成爲51 –