Indexes And UniqueIdentifier Fields
Aug 26, 2005
I have a table that contains articles (as in, newspaper articles, blog
articles, whatever). I need to use a column of type uniqueidentifier
because one of the requirements is that I be able to write the articles
out to XML or import them from XML, and references (as in, "for more
info read this: 2323-232-90934" have to still work after the export and
import).
So as a minimum, the table is going to look like this:
CREATE TABLE Articles (
ArticleID uniqueidentifier,
PublishDate datetime,
Title nvarchar (50)
ArticleContent ntext
)
GO
ALTER TABLE Articles ADD
CONSTRAINT PK_Articles
PRIMARY KEY NONCLUSTERED (ArticleID)
WITH FILLFACTOR = 100
GO
As you can see, I'm not going to use a clustered index on a column of
type UniqueIdentifier. I got that much from this newsgroup and from
websites on sql server performance tuning.
Two questions. 1: I will obviously need to list recent articles. I'll
need to do: select top 10 ArticleID, PublishDate, Title from Articles
order by PublishDate desc
Will there be any problem with an index on a datetime field to make
that query faster?
CREATE UNIQUE CLUSTERED INDEX IX_Articles_PublishDate
ON Articles (PublishDate DESC)
WITH FILLFACTOR = 100
GO
Question 2: Is there anything else that I can do here that I'm missing?
Should I maybe also have a auto-increment field and put the clustered
index on it instead?
Thanks in advance
chris
View 4 Replies
ADVERTISEMENT
Mar 7, 2006
Whn I use a UniqueIdentifier field as a parameter for SQLDataSource the parameter type defaults as an object. I just want to use the string value of the field.How do I do this?Thanks.
View 7 Replies
View Related
Aug 29, 2013
For large databases is it a good idea to create indexes for fields that are used in Where statements? Does that improve performance and reduce overhead?
View 4 Replies
View Related
Jul 1, 2014
I'm working to improve performance on a database I've inherited, and there are several thousand indexes. I've got a list of ones which should definitely exist within the database, and I'm looking to strip out all the others and start fresh, though this list is still quite large (1000 or so).
Is there a way I can remove all the indexes that are not in my list without too much trouble? I.e. without having to manually go through them all individually. The list is currently in a csv file.
I'm looking to either automate the removal of indexes not in the list, or possibly to generate the Create statements for the indexes on the list and simply remove all indexes and then run these statements.
As an aside, when trying to list all indexes in the database, I've found various scripts to do this, but found they all seem to produce differing results. What is the best script to list all indexes?
View 5 Replies
View Related
Jan 28, 2008
I have just started using SQL Server reporting services and am stuck with creating subreports.
I have a added a sub report to the main report. When I right click on the sub report, go to properties -> Parameters, and click on the dropdown for Parameter Value, I see all Sum and Count fields but not the data fields.
For example, In the dropdownlist for the Parameter value, I see Sum(Fields!TASK_ID.Value, "AppTest"), Count(Fields!TASK_NAME.Value, "CammpTest") but not Fields!TASK_NAME.Value, Fields!TASK_ID.Value which are the fields retrieved from the dataset assigned to the subreport.
When I manually change the parameter value to Fields!TASK_ID.Value, and try to preview the report, I get Error: Subreport could not be shown. I have no idea what the underlying issue is but am guessing that it's because the field - Fields!TASK_ID.Value is not in the dropdown but am trying to link the main report and sub report with this field.
Am I missing something here? Any help is appreciated.
Thanks,
Sirisha
View 3 Replies
View Related
Feb 20, 2008
How can I create a Table whose one field will be 'tableid INT IDENTITY(1,1)' and other fields will be the fields from the table "ashu".
can this be possible in SQL Server without explicitly writing the"ashu" table's fields name.
View 8 Replies
View Related
Jan 26, 2008
sir
I have got this error message to establish connction with recordset vb .net, Can you please rectify this
Too many arguments to 'Public Overridable ReadOnly Default Property Fields() As ADODB.Fields'
my code like this
rs = New ADODB.Recordset
rs.Open("Select * from UserLogin where userid='" & txtUserName.Text & "'", gstrDB, DB.CursorTypeEnum.adOpenStatic)
If txtUserName.Text = rs.Fields.Append(userid) Then
MsgBox("OK", MsgBoxStyle.OKOnly, "Confirmation")
End If
thanks
View 1 Replies
View Related
Sep 18, 2007
So I'm reading http://www.sql-server-performance.com/tips/clustered_indexes_p2.aspx and I come across this:
When selecting a column to base your clustered index on, try to avoid columns that are frequently updated. Every time that a column used for a clustered index is modified, all of the non-clustered indexes must also be updated, creating additional overhead. [6.5, 7.0, 2000, 2005] Updated 3-5-2004
Does this mean if I have say a table called Item with a clustered index on a column in it called itemaddeddate, and several non-clustered indexes associated with that table, that if a record gets modified and it's itemaddeddate value changes, that ALL my indexes on that table will get rebuilt? Or is it referring to the table structure changing?
If so does this "pseudocode" example also cause this to occur:
sqlstring="select * from item where itemid=12345"
rs.open sqlstring, etc, etc, etc
rs.Fields("ItemName")="My New Item Name"
rs.Fields("ItemPrice")=1.00
rs.Update
Note I didn't explicitly change the value of rs.fields("ItemAddedDate")...does rs.Fields("ItemAddedDate")=rs.Fields("ItemAddedDate") occur implicitly, which would force the rebuild of all the non-clustered indexes?
View 4 Replies
View Related
Apr 10, 2006
I am really struggling. I am trying to query a sql database table using a uniqueidentifier.
Public Class SalesDataClass
Public Function getAccountNumber(ByVal ID As String) As String
Dim accountnumber As String = "0"
'Try
Using connection As New SqlConnection(ConfigurationManager.ConnectionStrings("InterhealthCRM_MSCRMConnectionString").ConnectionString)
Using command As New SqlCommand("getAccountNumber", connection)
command.CommandType = CommandType.StoredProcedure
Dim parameterdat1 As New SqlParameter("@accountid", SqlDbType.UniqueIdentifier)
parameterdat1.Value = ID
command.Parameters.Add(parameterdat1)
Dim parameterdat2 As New SqlParameter("@accountnum", SqlDbType.NVarChar, 20, ParameterDirection.Output)
command.Parameters.Add(parameterdat2)
connection.Open()
command.ExecuteNonQuery()
accountnumber = parameterdat2.Value
Return accountnumber
End Using
End Using
'Catch ex As SqlException
' Catch ex As InvalidOperationException
' Catch ex As Exception
' You might want to pass these errors
' back out to the caller.
' End Try
End Function
End Class
Can someone help me correct my code.
Sproc:
ALTER PROCEDURE [dbo].[getAccountNumber]
-- Add the parameters for the stored procedure here
@accountId uniqueidentifier,
@accountnum nvarchar(20) output
AS
BEGIN
-- SET NOCOUNT ON added to prevent extra result sets from
-- interfering with SELECT statements.
SET NOCOUNT ON;
-- Insert statements for procedure here
SELECT accountNumber from accountbase where accountid = @accountid
return @accountnum
END
View 2 Replies
View Related
Jul 17, 2003
Hi,
I am using UNIQUEIDENTIFIER column for my table. I do not insert data for it. I left it on database by setting to default NEWID(). Now in my application I need the value of UNIQUEIDENTIFIER column I just inserted. Is there any function or query to get this value like in case of IDENTITY column we can get the latest inserted value from select @@IDENTITY.
Thanks and regards,
Uday
View 3 Replies
View Related
Jan 28, 2006
Hey I was curious about the Uniqueidentifier is that better then using the @IDENTITY, apparently the Unique uses your computers mac address as a base???
View 4 Replies
View Related
Dec 5, 2006
as above, how can i use this datatype to generate a running number for my userID ? i tried with newid() but it returns a unique 32bit.
View 10 Replies
View Related
Apr 4, 2008
does SQLCE supports the use of uniqueidentifier datatype.and how can i use it?
i have heard that SQLCE supports only integer type as identity column.
so what datatype i should use for identification(primary key).
View 4 Replies
View Related
Nov 5, 2007
I have a table with id(uniqueidentifier) as the primary key, and another table with id(int) as the foreign key.
When I try to INNER JOIN them on id=id in a view, I get an error that uniqueidentifier and int are incompatible.
I'm new to SQL SERVER and I consider uniqueidentifier as equal to AutoNumber in MSAccess. Isn't it so? If not, how do I make this JOIN work?
View 3 Replies
View Related
Nov 26, 2007
Hello all,
I would like to put another line into my combo box using this SQL statement but this part "(select newid() as QuestionID, 'Select a Question' as QuestionText)" is not working. (select newid() as QuestionID, 'Select a Question as QuestionText) union all (SELECT * FROM (SELECT TOP 100 * FROM [dbo.aspnet_Questions]) as tbl)
RETURN
It gives me an error: Invalid object name 'dbo.aspnet_Questions'. Can anybody please help me with this error?
Thank you, Vic.
View 5 Replies
View Related
Jan 26, 2008
I just want to ask if there is a passible explaination for why this code thosen't generate the proper RETURN VALUE, My coal is when a user uses the asp:CreateUserWizard i retrive GUID from the new account.With this I will check if the relation tabel has that value, so I would like to run this.
Stored Proc.
CREATE PROCEDURE proc_CustomerCheckExist@UserId uniqueidentifierASIF EXISTS (SELECT COUNT(*) FROM dbo.aspnet_LD_Customers WHERE UserId = @UserId) Return 1ELSE Return 0GO
Problem is if I take 2 different GUID, I still get the same result "Return 1" as true even if I dont have the GUID in my tabel row
Thanks!
View 3 Replies
View Related
Apr 18, 2004
Hello there!
it was a while since i studied SQL and that brings us to my problem...
I'm creating a Stored Procedure wich first insert information in a table. That table has a uniqueidentifier fild that is default-set to newid().
later in the SP i need that uniqueidentifier value? how do I get it?
I tried this:
CREATE PROCEDURE spInsertNews
@uidArticleId uniqueidentifier = newid,
@strHeader nvarchar(300),
@strAbstract nvarchar(600),
@strText nvarchar(4000),
@dtDate datetime,
@dtDateStart datetime,
@dtDateStop datetime,
@strAuthor nvarchar(200),
@strAuthorEmail nvarchar(200),
@strKeywords nvarchar(400),
@strCategoryName nvarchar(200) = 'nyhet'
AS
INSERT INTO tblArticles
VALUES( @uidArticleId,@strHeader,@strAbstract,@strText,@dt
Date,@dtDateStart,@dtDateStop,@strAuthor,@strAutho
rEmail,@strKeywords)
declare @uidCategoryId uniqueidentifier
EXEC spGetCategoryId @strCategoryName, @uidCategoryId OUTPUT
INSERT INTO tblArticleCategory(uidArticleId, uidCategoryId)
VALUES(@uidArticleId, @uidCategoryId)
But i get an error when I EXEC the SP like this:
EXEC spInsertNews
@strHeader = 'Detta är den andra nyheten',
@strAbstract = 'dn första insatt med sp:n',
@strText = 'här kommer hela nyhetstexten att stå. Här får det plats 2000 tecken, dvs fler än vad jag orkar skriva nu...',
@dtDate = '2003-01-01',
@dtDateStart = '2003-01-01',
@dtDateStop = '2004-01-01',
@strAuthor = 'David N',
@strAuthorEmail = 'david@davi.com',
@strKeywords = 'nyhet, blajblaj, blaj'
the errormessage is: Syntax error converting from a character string to uniqueidentifier.
does anyone have a sulution to this problem?
Can I use something similar to the @@IDENTITY?
I will be greatful for any ideas...
thanks
/David, Sweden
View 8 Replies
View Related
Jul 8, 2004
I want to use a NEWID() to generate order numbers, but i dont want to give customers the long uniqueID. so im wondering if i concatinate it to 8 characters, if that would be safe or not...
thx in adv
View 6 Replies
View Related
Feb 9, 2005
Hi,
I am writing a C# application that uses a SQL server database to hold its data. I need to create a stored procedure that returns a particular row's primary key value. This is no problem if the primary key is an INT. But my primary key is a unique identifier, and the stored procedure doesn't want to let me return any values that aren't INTs. Can someone please tell me how to get around this?
Thanks in advance.
Scott
View 3 Replies
View Related
Nov 28, 2005
I am trying to use a stored procedure and it seems to be giving me a error - I think it doesn't like the uniqueidentifier. I have included the error, stored procedure, and code behind that calls the stored procedure.Thanks for any help on this! This is the error I get:System.ArgumentException: No mapping exists from object type System.Web.UI.WebControls.TextBox to a known managed provider native type. at System.Data.SqlClient.MetaType.GetMetaTypeFromValue(Type dataType, Object value, Boolean inferLen) at System.Data.SqlClient.SqlParameter.GetMetaTypeOnly() at System.Data.SqlClient.SqlParameter.Validate(Int32 index) at System.Data.SqlClient.SqlCommand.BuildParamList(TdsParser parser, SqlParameterCollection parameters) at System.Data.SqlClient.SqlCommand.BuildExecuteSql(CommandBehavior behavior, String commandText, SqlParameterCollection parameters, _SqlRPC& rpc) at System.Data.SqlClient.SqlCommand.RunExecuteReaderTds(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, Boolean async) at System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method, DbAsyncResult result) at System.Data.SqlClient.SqlCommand.InternalExecuteNonQuery(DbAsyncResult result, String methodName, Boolean sendToPipe) at System.Data.SqlClient.SqlCommand.ExecuteNonQuery() at view_WardSec_PatientLogDetail2.UpdateRecord_buttonClick(Object sender, EventArgs e) in C:Documents and SettingsKBuchanan.LMHDesktopWebSitesNewest_ERViewsview_WardSec_PatientLogDetail.aspx.vb:line 358 Here is the stored procedure:set ANSI_NULLS ONset QUOTED_IDENTIFIER ONgo
ALTER PROCEDURE [dbo].[UpdateTblVisit_WardSecPatientLog] ( @VID decimal, @lbl_ChiefComplaint nvarchar(50), @TriageDtTmTextBox datetime, @PtInRmDtTmTextBox datetime, @RnInRmDtTmTextBox datetime, @PhyInRmDtTmTextBox datetime, @EDHoldDisposDtTmTextBox datetime, @DispDschDtTmTextBox datetime, @ddlTriageNurse uniqueidentifier, @ddlPriNurse uniqueidentifier, @ddlEDPhy uniqueidentifier, @ddlPriRefPhy decimal, @ddlSecRefPhy decimal, @ddlDschRN uniqueidentifier, @ddlDschPhy uniqueidentifier, @ddl_MnsArriv decimal, @lblDschDiag nvarchar(50), @chkbox_LogComplete bit )AS
SET NOCOUNT ON
Update tblVisit SET vChiefComplaint = @lbl_ChiefComplaint, vTriageDtTm = @TriageDtTmTextBox, vPtInRmDtTm = @PtInRmDtTmTextBox, vRnInRmDtTm = @RnInRmDtTmTextBox, vPhyInRmDtTm = @PhyInRmDtTmTextBox, vEDHoldDisposDtTm = @EDHoldDisposDtTmTextBox, vDispDschDtTm = @DispDschDtTmTextBox, vTriageRnID = @ddlTriageNurse, vRnID = @ddlPriNurse, vEdPhyProvID = @ddlEDPhy, vPriRefPhyProvID = @ddlPriRefPhy, vSecRefPhyProvID = @ddlSecRefPhy, vDschRnID = @ddlDschRN, vDschPhyID = @ddlDschPhy, vMnsArrvID = @ddl_MnsArriv, vDschDiag = @lblDschDiag, vLogCompletedInd = @chkbox_LogComplete, vLogLastEdit = getDate() WHERE VID = @VID SET NOCOUNT OFF RETURN
-----------------------------------------------------------------------------Following is the codebehind for a button oncommand event. This codeshould execute the stored procedure.-----------------------------------------------------------------------------
Public Sub UpdateRecord_buttonClick(ByVal sender As Object, ByVal e As System.EventArgs) 'Use this to update the CareGiverID into the tbl_Visit table. Dim sbSql As New System.Text.StringBuilder sbSql.Append("EXEC UpdateTblVisit_WardSecPatientLog ") sbSql.Append("@VID, ") sbSql.Append("@lbl_ChiefComplaint, ") sbSql.Append("@TriageDtTmTextBox, ") sbSql.Append("@PtInRmDtTmTextBox, ") sbSql.Append("@RnInRmDtTmTextBox, ") sbSql.Append("@PhyInRmDtTmTextBox, ") sbSql.Append("@EDHoldDisposDtTmTextBox, ") sbSql.Append("@DispDschDtTmTextBox, ") sbSql.Append("@ddlTriageNurse, ") sbSql.Append("@ddlPriNurse, ") sbSql.Append("@ddlEDPhy, ") sbSql.Append("@ddlPriRefPhy, ") sbSql.Append("@ddlSecRefPhy, ") sbSql.Append("@ddlDschRN, ") sbSql.Append("@ddlDschPhy, ") sbSql.Append("@ddl_MnsArriv, ") sbSql.Append("@lblDschDiag, ") sbSql.Append("@chkbox_LogComplete, ") sbSql.Append("@UserID ")
'Response.Write(sbSql.ToString) 'Response.End()
'Create variables for each of the edited values Dim con As New SqlConnection(ConfigurationManager.ConnectionStrings("ERTrekker_ProdConnectionString1").ConnectionString) Dim cmd As New SqlCommand(sbSql.ToString(), con)
FindControls(DetailsView, "lbl_ChiefComplaint") Dim ilbl_ChiefComplaint As TextBox = CType(MyControl, TextBox) FindControls(DetailsView, "TriageDtTmTextBox") Dim iTriageDtTmTextBox As TextBox = CType(MyControl, TextBox) FindControls(DetailsView, "PtInRmDtTmTextBox") Dim iPtInRmDtTmTextBox As TextBox = CType(MyControl, TextBox) FindControls(DetailsView, "RnInRmDtTmTextBox") Dim iRnInRmDtTmTextBox As TextBox = CType(MyControl, TextBox) FindControls(DetailsView, "PhyInRmDtTmTextBox") Dim iPhyInRmDtTmTextBox As TextBox = CType(MyControl, TextBox) FindControls(DetailsView, "EDHoldDisposDtTmTextBox") Dim iEDHoldDisposDtTmTextBox As TextBox = CType(MyControl, TextBox) FindControls(DetailsView, "DispDschDtTmTextBox") Dim iDispDschDtTmTextBox As TextBox = CType(MyControl, TextBox) FindControls(DetailsView, "ddlTriageNurse") Dim iddlTriageNurse As DropDownList = CType(MyControl, DropDownList) FindControls(DetailsView, "ddlPriNurse") Dim iddlPriNurse As DropDownList = CType(MyControl, DropDownList) FindControls(DetailsView, "ddlEDPhy") Dim iddlEDPhy As DropDownList = CType(MyControl, DropDownList) FindControls(DetailsView, "ddlPriRefPhy") Dim iddlPriRefPhy As DropDownList = CType(MyControl, DropDownList) FindControls(DetailsView, "ddlDschRN") Dim iddlDschRN As DropDownList = CType(MyControl, DropDownList) FindControls(DetailsView, "ddlDschPhy") Dim iddlDschPhy As DropDownList = CType(MyControl, DropDownList) FindControls(DetailsView, "ddl_MnsArriv") Dim iddl_MnsArriv As DropDownList = CType(MyControl, DropDownList) FindControls(DetailsView, "lblDschDiag") Dim ilblDschDiag As TextBox = CType(MyControl, TextBox) FindControls(DetailsView, "chkbox_LogComplete") Dim ichkbox_LogComplete As CheckBox = CType(MyControl, CheckBox)
'Add all of the parameters to the command With cmd.Parameters .AddWithValue("@VID", Request("vID")) .AddWithValue("@lbl_ChiefComplaint", ilbl_ChiefComplaint.Text.ToString) .AddWithValue("@TriageDtTmTextBox", iTriageDtTmTextBox.Text.ToString) .AddWithValue("@PtInRmDtTmTextBox", iPtInRmDtTmTextBox) .AddWithValue("@RnInRmDtTmTextBox", iRnInRmDtTmTextBox.Text.ToString) .AddWithValue("@PhyInRmDtTmTextBox", iPhyInRmDtTmTextBox.Text.ToString) .AddWithValue("@EDHoldDisposDtTmTextBox", iEDHoldDisposDtTmTextBox.Text.ToString) .AddWithValue("@DispDschDtTmTextBox", iDispDschDtTmTextBox.Text.ToString) .AddWithValue("@ddlTriageNurse", iddlTriageNurse.SelectedValue.ToString) .AddWithValue("@ddlPriNurse", iddlPriNurse.SelectedValue.ToString) .AddWithValue("@ddlEDPhy", iddlEDPhy.SelectedValue.ToString) .AddWithValue("@ddlPriRefPhy", iddlPriRefPhy.SelectedValue.ToString) .AddWithValue("@ddlDschRN", iddlDschRN.SelectedValue.ToString) .AddWithValue("@ddlDschPhy", iddlDschPhy.SelectedValue.ToString) .AddWithValue("@ddl_MnsArriv", iddl_MnsArriv.SelectedValue.ToString) .AddWithValue("@lblDschDiag", ilblDschDiag.Text.ToString) .AddWithValue("@chkbox_LogComplete", ichkbox_LogComplete.Checked.ToString) .AddWithValue("@UserID", System.Web.HttpContext.Current.Session("UserID"))
End With
' Open the connection and execute the command Try con.Open() If cmd.ExecuteNonQuery() < 1 Then Throw New System.Exception("The record was not updated") End If Catch ex As Exception System.Web.HttpContext.Current.Response.Write(ex.ToString()) Finally If Not con Is Nothing AndAlso con.State = System.Data.ConnectionState.Open Then con.Close() End If End Try End Sub
View 1 Replies
View Related
Nov 10, 2005
Hello everyone.
I have 2 tables in MSSQL Server 2000, Products(idProduct, idProductType, name, quatity) and ProductsType(idProductType, name).
idXXXX are the primery keys and the data type is uniqueidentifier.
In table Products, the collum idProductType is a foreign key refering table ProductsType.
I can insert as many product types as i want without any problems.
Insert INTO ProductsType(name) VALUES('milk')
When inserting products i use the idProductType that was automatacly generated in last insert.
INSERT INTO Products (uuidProductType,name,quantity,)
VALUES ('AD9388A3-CA86-482D-B57F-6FA068E7D405','President Milk 50cl',500)
but i got the following error in SQL Query Analyzer:
Server: Msg 8169, Level 16, State 2, Line 1
Syntax error converting from a character string to uniqueidentifier.
I have searched the forum and i cant find any solution. i need to use uniqueidentifer data types because replication with PDA devices.
Any tips?
Thank you in advance.
Helder
View 5 Replies
View Related
Feb 18, 2006
Hey can you use the Uniqueidentifier as a primary key or no??
View 4 Replies
View Related
Jul 12, 2006
Hi,
I use this procedure to add a record to the db (SQL 2005)
i constantly get this error:
Conversion failed when converting from a character string to uniqueidentifier.
This is the sp:
set ANSI_NULLS ON
set QUOTED_IDENTIFIER ON
go
ALTER PROC [dbo].[AddBootloader]
@BootName nvarchar(50),
@Version nvarchar(50),
@CSD nvarchar(50),
@CreatorID uniqueidentifier,
@FilePath nvarchar(150),
@FileSize nvarchar(150)
AS
INSERT INTO dbo.EB_Bootloaders
([Bootname]
,[Version]
,[CSD]
,[FilePath]
,[FileSize]
,[CreatorID])
VALUES
(
@BootName,
@Version,
@CSD,
@CreatorID,
@FilePath,
@FileSize)
And this is the table:
USE [Ebdata]
GO
/****** Object: Table [dbo].[EB_Bootloaders] Script Date: 07/12/2006 10:06:42 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE [dbo].[EB_Bootloaders](
[ID] [bigint] IDENTITY(1,3) NOT NULL,
[BootName] [nvarchar](50) COLLATE Latin1_General_CI_AS NULL,
[Version] [nvarchar](50) COLLATE Latin1_General_CI_AS NULL,
[CSD] [nvarchar](50) COLLATE Latin1_General_CI_AS NULL,
[FilePath] [nvarchar](150) COLLATE Latin1_General_CI_AS NULL,
[FileSize] [nvarchar](50) COLLATE Latin1_General_CI_AS NULL,
[CreateDate] [datetime] NULL CONSTRAINT [DF_EB_Bootloaders_CreateDate] DEFAULT (getdate()),
[CreatorID] [uniqueidentifier] NOT NULL,
[UpdateDate] [datetime] NULL,
[UpdateUser] [uniqueidentifier] NULL,
CONSTRAINT [PK_EB_Bootloaders_1] PRIMARY KEY CLUSTERED
(
[ID] ASC
)WITH (IGNORE_DUP_KEY = OFF) ON [PRIMARY]
) ON [PRIMARY]
GO
USE [Ebdata]
GO
ALTER TABLE [dbo].[EB_Bootloaders] WITH NOCHECK ADD CONSTRAINT [FK_EB_Bootloaders_aspnet_Users] FOREIGN KEY([CreatorID])
REFERENCES [dbo].[aspnet_Users] ([UserId])
NOT FOR REPLICATION
GO
ALTER TABLE [dbo].[EB_Bootloaders] WITH NOCHECK ADD CONSTRAINT [FK_EB_Bootloaders_aspnet_Users1] FOREIGN KEY([UpdateUser])
REFERENCES [dbo].[aspnet_Users] ([UserId])
NOT FOR REPLICATION
The funny thing is that i copied the sp code from another which runs perfect,
I insert a Guid from an asp.net page.
Hope someone can help me here because im am stucked!
Cheers Wimmo
View 3 Replies
View Related
Apr 18, 2004
Hello there!
it was a while since i studied SQL and that brings us to my problem...
I'm creating a Stored Procedure wich first insert information in a table. That table has a uniqueidentifier fild that is default-set to newid().
later in the SP i need that uniqueidentifier value? how do I get it?
I tried this:
CREATE PROCEDURE spInsertNews
@uidArticleId uniqueidentifier = newid,
@strHeader nvarchar(300),
@strAbstract nvarchar(600),
@strText nvarchar(4000),
@dtDate datetime,
@dtDateStart datetime,
@dtDateStop datetime,
@strAuthor nvarchar(200),
@strAuthorEmail nvarchar(200),
@strKeywords nvarchar(400),
@strCategoryName nvarchar(200) = 'nyhet'
AS
INSERT INTO tblArticles
VALUES( @uidArticleId,@strHeader,@strAbstract,@strText,@dt Date,@dtDateStart,@dtDateStop,@strAuthor,@strAutho rEmail,@strKeywords)
declare @uidCategoryId uniqueidentifier
EXEC spGetCategoryId @strCategoryName, @uidCategoryId OUTPUT
INSERT INTO tblArticleCategory(uidArticleId, uidCategoryId)
VALUES(@uidArticleId, @uidCategoryId)
But i get an error when I EXEC the SP like this:
EXEC spInsertNews
@strHeader = 'Detta är den andra nyheten',
@strAbstract = 'dn första insatt med sp:n',
@strText = 'här kommer hela nyhetstexten att stå. Här får det plats 2000 tecken, dvs fler än vad jag orkar skriva nu...',
@dtDate = '2003-01-01',
@dtDateStart = '2003-01-01',
@dtDateStop = '2004-01-01',
@strAuthor = 'David N',
@strAuthorEmail = 'david@davi.com',
@strKeywords = 'nyhet, blajblaj, blaj'
the errormessage is: Syntax error converting from a character string to uniqueidentifier.
does anyone have a sulution to this problem?
Can I use something similar to the @@IDENTITY?
I will be greatful for any ideas...
thanks
/David, Sweden
View 1 Replies
View Related
Jan 25, 2006
Hi:
I am using the built in securty database from vs2005
I am trying to write an insert trigger that will add a role each time a user is added but I seem to be having difficulty I believe it's with the uniqueidentifier datatype. when I run this trigger via an insert statement I get the following error.
Can anyone set me straight?
========error==============
Cannot insert the value NULL into column 'RoleId', table 'R:AAAPROJECTSASPVS2005MERCERBUCKSAPP_DATAASPNETDB.MDF.dbo.aspnet_UsersInRoles'; column does not allow nulls. INSERT fails.
==================insert statement==========
Declare @NewUserID as uniqueIdentifier
set @NewUserID=newID()
print Cast(@NewUserID as varchar(50))
insert into dbo.aspnet_Users (ApplicationID,UserID,UserName,LoweredUserName,LastActivityDate)
Values('f23f01f0-7ad7-463b-87e2-f3e9141e6426',@NewUserID,'lrchase','lrchase','7/20/2005')
======trigger============================
set ANSI_NULLS ON
set QUOTED_IDENTIFIER ON
go
ALTER TRIGGER [InsertRole]
ON [dbo].[aspnet_Users]
AFTER INSERT
AS
DECLARE @RoleID uniqueidentifier
DECLARE @UserID uniqueidentifier
Select @UserID=Userid from inserted
Print @UserID
SELECT @RoleID = RoleID
FROM dbo.aspnet_Roles where dbo.aspnet_Roles.LoweredRoleName='user'
Print @RoleID
SET NOCOUNT ON;
Insert Into dbo.aspnet_UsersInRoles
Values(@UserID,@RoleID)
Thanks Len
View 2 Replies
View Related
Jun 7, 2007
hi. im new in using rowguid, i want to know how long can this datatype can hold. and is there a chance that value can be duplicate or the sql is checking it already before it create a new one.
and what will happen if i select yes in isrowguid.
thnx
View 2 Replies
View Related
Aug 22, 2005
Hi all,I'm trying to run a select where auniqueidentifier/GUID equals a hex, but I don't seem to be gettingmatches.For example, this query returns the expected record:select * from items where itemGUID ='{11111111-2222-3333-4444-555555555555}'But this one does not:select * from items where itemGUID = 0x11111111222233334444555555555555Any tips?thanks, -Scott
View 5 Replies
View Related
Jul 26, 2007
So, what's the common preference out there for primary and/or surrogate keys? Uniqueidentifier or identity?
(No replication is involved.)
View 7 Replies
View Related
Jan 17, 2008
SQL2K SP4
Greetings. I just inherited doscovered a 3gb DB that is chewing up lots of CPU time on a pretty beefy server. This DB uses 4 main tables. It has many more, but most of the Inserts/ Updates/ Deletes/ and Joins are done mainly on 4 tables. Anyways, I figured out which sprocs use the most CPU between the hours of 7 and 7 every day, off to a good start. The first one is hardly every run. While it is a pig in terms of CPU usage, the amount of times it's run is somewhat minimal compared to others. So the next one is is a sproc that does auto refreshes, and is run every minute by thousands. I start to analyze it, particularly for missing indexes, but all is well. So I'm beating my head up against the wall and I realize, THE CLUSTERED PRIMARY KEY (PK) FOR THESE TABLES USE A GUID DATA TYPE....
So I have some questions about this data type, and also inserting into a clustered PK in general.
Are joins on this data type as bad as joining on varchar columns in terms of speed?
I don't see that any of my insert sprocs are taking a long time. So if an insert occurs, and a page split needs to happen (which is quite potential with this data type as a clustered PK), does it -- A) Begin the insert, complete the insert, then do a page split? Or does it -- B) Begin the insert, do the page split, then complete the insert?
If A, it would make sense that I would see no lag for my insert sprocs, but also see a high CPU usage (provided I have a high number of page splits, which is yet to be determined. If B, I would expect to see a lot of long running insert sprocs, which I don't.
View 10 Replies
View Related
Sep 13, 2006
convert(uniqueidentifier, 00000000-0000-0000-0000-000000000000)
not working.
View 3 Replies
View Related
Sep 26, 2007
Hai,
Because uniqueidetifier is not an auto generated field, How can be it used with a primary key column ?
Thanks
Maju
View 5 Replies
View Related
Apr 26, 2006
Hi all
In the database there is a table for customers and a table for the saleman,
the relationship between the 2 table is a uniqueidentifer field
customer table
name salesmanager
company 1 12545-854
salesmanager table
id salesmanager
12545-854 bob smith
I need to update the customer salesmanger field when someone leaves problem is that that field
is a uniqueidentifer and it will not allow me to update
Thanks in advance
rich
View 2 Replies
View Related
Feb 21, 2008
I have a table that contains a uniqueidentifier column and then another table that contains a foreign-key column, but is set up as varchar. I am building a stored procedure, however I get the following error: "Syntax error converting from a character string to uniqueidentifier"
I tried casting the UID column to a varchar, but this does not work either.
This is a simple select where the column in the foreign table is equal to the ID column of the main table.
Is there a way to solve this without having to make any table changes?
Thanks for the help.
View 5 Replies
View Related