1

#が整数でIDある形式の asp.net vb アプリと SQL Server の両方で作成したものがあります。MM/YYYY/##整数は、ユーザーがフォームを生成するたびに 1 ずつ増加するため、現在は です08/2013/39

これに使用するコードは次のとおりです

    Dim get_end_rfa As String = get_RFA_number()
    Dim pos As Integer = get_end_rfa.Trim().LastIndexOf("/") + 1
    Dim rfa_number = get_end_rfa.Substring(pos)
    Convert.ToInt32(rfa_number)
    Dim change_rfa As Integer = rfa_number + 1

    Dim rfa_date As String = Format(Now, "MM/yyyy")

    Dim rfa As String = rfa_date + "/" + Convert.ToString(change_rfa)

    RFA_number_box.Text = rfa

Public Function get_RFA_number() As String
    Dim conn As New SqlConnection(ConfigurationManager.ConnectionStrings("AnalyticalNewConnectionString").ConnectionString)
    conn.Open()
    Dim cmd As New SqlCommand("select TOP 1 RFA_Number from New_Analysis_Data order by submitted_date desc", conn)
    Dim RFA As String = (cmd.ExecuteScalar())
    conn.Close()
    Return RFA
End Function

毎月初めに整数を 1 にリセットする必要があります。どうすればいいですか?

4

3 に答える 3

1

テーブルから max(record) を選択し、currentDate をレコードの Date と比較します。それらが異なる場合。ID = 1 をリセットします。このようなSQL

select ID, recordDate 
from TABLE
where ID = (select max(ID) from TABLE) 
where datename(YYYY ,getdate()) = datename(YYYY ,recordDate()) 
and datename(MM ,getdate()) = datename(MM ,recordDate()) 
于 2013-08-29T11:39:02.787 に答える