sql-server – User Defined Table Types entre bases de dados diferentes

Question:

I created a User Defined Table Type in a DB1 database. If I try to declare a variable of that type in a BD2 database procedure it gives me the following error:

The type name 'BLABLA' contains more than the maximum number of prefixes.

As I couldn't solve it this way, I tried to create the same data type in both databases. The statement did not give an error, but when trying to send the data type created in the DB2 database to a procedure in DB1 it gives the following error:

"Operant type clash"

Is there any way to be able to send a data table from a DB2 database procedure to a DB1 database procedure?

Answer:

The message

Operand Type Clash

it means that you declared the two types in different databases and they have some difference between them that makes the database get lost.

There is an article where Microsoft clarifies how this works, as well as recommending a series of precautions when dealing with User Defined Types.

Scroll to Top