The patent badge is an abbreviated version of the USPTO patent document. The patent badge does contain a link to the full patent document.
The patent badge is an abbreviated version of the USPTO patent document. The patent badge covers the following: Patent number, Date patent was issued, Date patent was filed, Title of the patent, Applicant, Inventor, Assignee, Attorney firm, Primary examiner, Assistant examiner, CPCs, and Abstract. The patent badge does contain a link to the full patent document (in Adobe Acrobat format, aka pdf). To download or print any patent click here.
Patent No.:
Date of Patent:
Sep. 29, 2009
Filed:
Feb. 14, 2005
Ramachandran Venkatesh, Bellevue, WA (US);
Jun Fang, Sammamish, WA (US);
Jose A. Blakeley, Redmond, WA (US);
Beysim Sezgin, Redmond, WA (US);
Balaji Rathakrishnan, Sammamish, WA (US);
Peter A. Carlin, Seattle, WA (US);
Ramachandran Venkatesh, Bellevue, WA (US);
Jun Fang, Sammamish, WA (US);
Jose A. Blakeley, Redmond, WA (US);
Beysim Sezgin, Redmond, WA (US);
Balaji Rathakrishnan, Sammamish, WA (US);
Peter A. Carlin, Seattle, WA (US);
Microsoft Corporation, Redmond, WA (US);
Abstract
A database system and method allows a user to write program code in a high-level programming language that implements a class that defines the structure of a user-defined type and methods that can be invoked on instances of the type. The class is then registered with the database system, which enforces a specific contract for user-defined types against the class. The contract comprises the following requirements. First, the class must specify one of a plurality of different formats for persisting instances of the user-defined type in a database store. Second, the class must be capable of returning a null value for the user-defined type. Third, the class must provide a method for converting the user-defined type to another type. Once these requirements are satisfied, the database system enables instances of the user-defined type to be created. A user-defined type can be used in all contexts where any other built-in type can be used. This includes defining columns of tables, declaring variables and parameters to functions and stored procedures, and evaluating expressions of the user-defined type in SQL queries and updates. Preferably, the database system stores metadata about the user-defined type for subsequent use in creating instances of the type.