PDA

View Full Version : سوال: نوشن کدی برای ثبت اتوماتیک id



amin_rj
دوشنبه 30 خرداد 1390, 16:23 عصر
سلام دوستان
من می خواهم در یک جدول که شامل id های نا منظم است id جدید طوری وارد شود که id های خالی جا افتاده به طور خودکار در فرم وارد شود مثلا اگر جدول ما شامل id های 1و2و3و4و6و8و9
بود با باز کردن فرم به طور خود کار تکس بکس id عدد 5 را نشان دهدوبعد ازثبت شدن این id با فشار یک دکمه یا دوباره باز شدناین فرم عدد 7 بیاید و به ترتیب تا آخر لطف می کنید کمک کنید


مثل این کد در vba
Dim rst87 As Recordset, strSql As String, I
strSql = "SELECT sanad.id1 FROM bar ORDER BY bar.id1;"

Set rst87 = CurrentDb.OpenRecordset(strSql)
If rst87.RecordCount > 0 Then
rst87.MoveFirst
I = 1
Do While Not rst87.EOF
If rst87!id1 = I Then
rst87.MoveNext
I = I + 1
Else
Me.Text50 = I

Exit Function
End If
Loop
rst87.MoveLast
Me.Text50 = rst87![id1] + 1
Else
Me.Text50 = 1
End If
rst87.Close

amin_rj
دوشنبه 30 خرداد 1390, 23:08 عصر
سلام
از بین دوستان کسی نیست راهنمایی کند

zarrinnegar
دوشنبه 30 خرداد 1390, 23:30 عصر
سلام
از بین دوستان کسی نیست راهنمایی کند

به نظر من بهترین راه حل و کوتاه ترین راه حل اینه




SELECT

t.rowid FROM

(

SELECT ROW_NUMBER() OVER (ORDER BY code) AS rowid ,code,name FROM Table_1) AS t

WHERE

t.rowid<>t.code




با این کد میتونی اولین رکورد رو بعنوان کد جدید در نظر بگیری بعد دفعه بعد که اجراش میکنی دوباره اولین رکورد میشه کد جدیدت تا زمانی که هیچ رکوردی نباشه که اون وقت آخرین کدت رو یکی بهش اضافه میکنی

amin_rj
سه شنبه 31 خرداد 1390, 09:39 صبح
سلام ممنون از راهنمایی
ولی من یک جدول دیتا دارم که شماره های id آن به هم ریخته است
مجبورم کدی بنویسم که شماره های در نظر گرفته نشده را پیدا کند

zarrinnegar
سه شنبه 31 خرداد 1390, 23:44 عصر
سلام ممنون از راهنمایی
ولی من یک جدول دیتا دارم که شماره های id آن به هم ریخته است
مجبورم کدی بنویسم که شماره های در نظر گرفته نشده را پیدا کند


معلومه که خوب دقت نکردی
این کدی که من نوشتم اول لیست رو مرتب مبکنه بعدش اون کدی رو که میخوای بهت میده

بعدش هم اول اجراش کن بعد نظر بده