From af0fcb96a43137bfd1de0c8cca190522a549e492 Mon Sep 17 00:00:00 2001
From: Justin Clarke Casey
Date: Mon, 12 Jan 2009 17:51:43 +0000
Subject: * Apply http://opensimulator.org/mantis/view.php?id=2965 * Adds first
version of MsSql2005Dialect support for NHibernate * Thanks mpallari
---
OpenSim/Data/MSSQL/MSSQLRegionData.cs | 1 +
.../Resources/MsSql2005Dialect/001_AssetStore.sql | 10 ++
.../Resources/MsSql2005Dialect/001_GridStore.sql | 35 +++++++
.../MsSql2005Dialect/001_InventoryStore.sql | 36 ++++++++
.../Resources/MsSql2005Dialect/001_RegionStore.sql | 101 +++++++++++++++++++++
.../Resources/MsSql2005Dialect/001_UserStore.sql | 77 ++++++++++++++++
prebuild.xml | 1 +
7 files changed, 261 insertions(+)
create mode 100644 OpenSim/Data/NHibernate/Resources/MsSql2005Dialect/001_AssetStore.sql
create mode 100644 OpenSim/Data/NHibernate/Resources/MsSql2005Dialect/001_GridStore.sql
create mode 100644 OpenSim/Data/NHibernate/Resources/MsSql2005Dialect/001_InventoryStore.sql
create mode 100644 OpenSim/Data/NHibernate/Resources/MsSql2005Dialect/001_RegionStore.sql
create mode 100644 OpenSim/Data/NHibernate/Resources/MsSql2005Dialect/001_UserStore.sql
diff --git a/OpenSim/Data/MSSQL/MSSQLRegionData.cs b/OpenSim/Data/MSSQL/MSSQLRegionData.cs
index e710d1c..87960f0 100644
--- a/OpenSim/Data/MSSQL/MSSQLRegionData.cs
+++ b/OpenSim/Data/MSSQL/MSSQLRegionData.cs
@@ -1150,6 +1150,7 @@ VALUES
#endregion
#region Create parameters methods
+
///
/// Creates the prim inventory parameters.
///
diff --git a/OpenSim/Data/NHibernate/Resources/MsSql2005Dialect/001_AssetStore.sql b/OpenSim/Data/NHibernate/Resources/MsSql2005Dialect/001_AssetStore.sql
new file mode 100644
index 0000000..b998653
--- /dev/null
+++ b/OpenSim/Data/NHibernate/Resources/MsSql2005Dialect/001_AssetStore.sql
@@ -0,0 +1,10 @@
+create table Assets (
+ ID NVARCHAR(255) not null,
+ Type SMALLINT null,
+ Name NVARCHAR(64) null,
+ Description NVARCHAR(64) null,
+ Local BIT null,
+ Temporary BIT null,
+ Data VARBINARY(max) null,
+ primary key (ID)
+)
diff --git a/OpenSim/Data/NHibernate/Resources/MsSql2005Dialect/001_GridStore.sql b/OpenSim/Data/NHibernate/Resources/MsSql2005Dialect/001_GridStore.sql
new file mode 100644
index 0000000..0dfec7f
--- /dev/null
+++ b/OpenSim/Data/NHibernate/Resources/MsSql2005Dialect/001_GridStore.sql
@@ -0,0 +1,35 @@
+create table Regions (
+ Uuid NVARCHAR(255) not null,
+ RegionHandle BIGINT null,
+ RegionName NVARCHAR(32) null,
+ RegionRecvKey NVARCHAR(128) null,
+ RegionSendKey NVARCHAR(128) null,
+ RegionSecret NVARCHAR(128) null,
+ RegionDataURI NVARCHAR(255) null,
+ ServerIP NVARCHAR(64) null,
+ ServerPort INT null,
+ ServerURI NVARCHAR(255) null,
+ RegionLocX INT null,
+ RegionLocY INT null,
+ RegionLocZ INT null,
+ EastOverrideHandle BIGINT null,
+ WestOverrideHandle BIGINT null,
+ SouthOverrideHandle BIGINT null,
+ NorthOverrideHandle BIGINT null,
+ RegionAssetURI NVARCHAR(255) null,
+ RegionAssetRecvKey NVARCHAR(128) null,
+ RegionAssetSendKey NVARCHAR(128) null,
+ RegionUserURI NVARCHAR(255) null,
+ RegionUserRecvKey NVARCHAR(128) null,
+ RegionUserSendKey NVARCHAR(128) null,
+ ServerHttpPort INT null,
+ ServerRemotingPort INT null,
+ RegionMapTextureID NVARCHAR(255) null,
+ Owner_uuid NVARCHAR(255) null,
+ OriginUUID NVARCHAR(255) null,
+ primary key (Uuid)
+)
+create index region_handle on Regions (RegionHandle)
+create index region_name on Regions (RegionName)
+create index overrideHandles on Regions (EastOverrideHandle, WestOverrideHandle, SouthOverrideHandle, NorthOverrideHandle)
+
diff --git a/OpenSim/Data/NHibernate/Resources/MsSql2005Dialect/001_InventoryStore.sql b/OpenSim/Data/NHibernate/Resources/MsSql2005Dialect/001_InventoryStore.sql
new file mode 100644
index 0000000..37ba733
--- /dev/null
+++ b/OpenSim/Data/NHibernate/Resources/MsSql2005Dialect/001_InventoryStore.sql
@@ -0,0 +1,36 @@
+create table InventoryFolders (
+ ID NVARCHAR(255) not null,
+ Type SMALLINT null,
+ Version SMALLINT null,
+ ParentID NVARCHAR(255) null,
+ Owner NVARCHAR(255) null,
+ Name NVARCHAR(64) null,
+ primary key (ID)
+)
+create table InventoryItems (
+ ID NVARCHAR(255) not null,
+ InvType INT null,
+ AssetType INT null,
+ AssetID NVARCHAR(255) null,
+ Folder NVARCHAR(255) null,
+ Owner NVARCHAR(255) null,
+ Creator NVARCHAR(255) null,
+ Name NVARCHAR(64) null,
+ Description NVARCHAR(64) null,
+ NextPermissions INT null,
+ CurrentPermissions INT null,
+ BasePermissions INT null,
+ EveryOnePermissions INT null,
+ GroupID NVARCHAR(255) null,
+ GroupOwned BIT null,
+ SalePrice INT null,
+ SaleType TINYINT null,
+ Flags INT null,
+ CreationDate INT null,
+ primary key (ID)
+)
+create index item_group_id on InventoryItems (GroupID)
+create index item_folder_id on InventoryItems (Folder)
+create index item_owner_id on InventoryItems (Owner)
+create index folder_owner_id on InventoryFolders (Owner)
+create index folder_parent_id on InventoryFolders (ParentID)
diff --git a/OpenSim/Data/NHibernate/Resources/MsSql2005Dialect/001_RegionStore.sql b/OpenSim/Data/NHibernate/Resources/MsSql2005Dialect/001_RegionStore.sql
new file mode 100644
index 0000000..934e12f
--- /dev/null
+++ b/OpenSim/Data/NHibernate/Resources/MsSql2005Dialect/001_RegionStore.sql
@@ -0,0 +1,101 @@
+create table Prims (
+ UUID NVARCHAR(255) not null,
+ ParentID INT null,
+ ParentUUID NVARCHAR(255) null,
+ RegionID NVARCHAR(255) null,
+ CreationDate INT null,
+ Name NVARCHAR(255) null,
+ Text NVARCHAR(255) null,
+ Description NVARCHAR(255) null,
+ SitName NVARCHAR(255) null,
+ TouchName NVARCHAR(255) null,
+ ObjectFlags INT null,
+ CreatorID NVARCHAR(255) null,
+ OwnerID NVARCHAR(255) null,
+ GroupID NVARCHAR(255) null,
+ LastOwnerID NVARCHAR(255) null,
+ OwnerMask INT null,
+ NextOwnerMask INT null,
+ GroupMask INT null,
+ EveryoneMask INT null,
+ BaseMask INT null,
+ PositionX REAL null,
+ PositionY REAL null,
+ PositionZ REAL null,
+ GroupPositionX REAL null,
+ GroupPositionY REAL null,
+ GroupPositionZ REAL null,
+ VelocityX REAL null,
+ VelocityY REAL null,
+ VelocityZ REAL null,
+ AngularVelocityX REAL null,
+ AngularVelocityY REAL null,
+ AngularVelocityZ REAL null,
+ AccelerationX REAL null,
+ AccelerationY REAL null,
+ AccelerationZ REAL null,
+ SitTargetOffsetX REAL null,
+ SitTargetOffsetY REAL null,
+ SitTargetOffsetZ REAL null,
+ RotationX REAL null,
+ RotationY REAL null,
+ RotationZ REAL null,
+ RotationW REAL null,
+ SitTargetOrientX REAL null,
+ SitTargetOrientY REAL null,
+ SitTargetOrientZ REAL null,
+ SitTargetOrientW REAL null,
+ ScaleX REAL null,
+ ScaleY REAL null,
+ ScaleZ REAL null,
+ PCode TINYINT null,
+ PathBegin SMALLINT null,
+ PathEnd SMALLINT null,
+ PathScaleX TINYINT null,
+ PathScaleY TINYINT null,
+ PathShearX TINYINT null,
+ PathShearY TINYINT null,
+ PathSkew TINYINT null,
+ PathCurve TINYINT null,
+ PathRadiusOffset TINYINT null,
+ PathRevolutions TINYINT null,
+ PathTaperX TINYINT null,
+ PathTwist TINYINT null,
+ ProfileBegin SMALLINT null,
+ ProfileEnd SMALLINT null,
+ ProfileCurve TINYINT null,
+ ProfileHollow SMALLINT null,
+ Texture VARBINARY(8000) null,
+ ExtraParams VARBINARY(8000) null,
+ State TINYINT null,
+ primary key (UUID)
+)
+
+create table PrimItems (
+ ItemID NVARCHAR(255) not null,
+ PrimID NVARCHAR(255) null,
+ AssetID NVARCHAR(255) null,
+ ParentFolderID NVARCHAR(255) null,
+ CreatorID NVARCHAR(255) null,
+ OwnerID NVARCHAR(255) null,
+ GroupID NVARCHAR(255) null,
+ LastOwnerID NVARCHAR(255) null,
+ CurrentPermissions INT null,
+ BasePermissions INT null,
+ EveryonePermissions INT null,
+ GroupPermissions INT null,
+ NextPermissions INT null,
+ Name NVARCHAR(255) null,
+ Description NVARCHAR(255) null,
+ CreationDate INT null,
+ Flags INT null,
+ InvType INT null,
+ primary key (ItemID)
+)
+
+create table Terrain (
+ RegionID NVARCHAR(255) not null,
+ MapData VARBINARY(max) null,
+ primary key (RegionID)
+)
+
diff --git a/OpenSim/Data/NHibernate/Resources/MsSql2005Dialect/001_UserStore.sql b/OpenSim/Data/NHibernate/Resources/MsSql2005Dialect/001_UserStore.sql
new file mode 100644
index 0000000..c9c6c89
--- /dev/null
+++ b/OpenSim/Data/NHibernate/Resources/MsSql2005Dialect/001_UserStore.sql
@@ -0,0 +1,77 @@
+create table UserAgents (
+ ProfileID NVARCHAR(255) not null,
+ AgentIP NVARCHAR(24) null,
+ AgentPort INT null,
+ AgentOnline BIT null,
+ SessionID NVARCHAR(255) null,
+ SecureSessionID NVARCHAR(255) null,
+ InitialRegion NVARCHAR(255) null,
+ Region NVARCHAR(255) null,
+ LoginTime INT null,
+ LogoutTime INT null,
+ Handle BIGINT null,
+ primary key (ProfileID)
+)
+
+create table UserProfiles (
+ ID NVARCHAR(255) not null,
+ FirstName NVARCHAR(32) null,
+ SurName NVARCHAR(32) null,
+ PasswordHash NVARCHAR(32) null,
+ PasswordSalt NVARCHAR(32) null,
+ WebLoginKey NVARCHAR(255) null,
+ HomeRegionX INT null,
+ HomeRegionY INT null,
+ HomeLocationX REAL null,
+ HomeLocationY REAL null,
+ HomeLocationZ REAL null,
+ HomeLookAtX REAL null,
+ HomeLookAtY REAL null,
+ HomeLookAtZ REAL null,
+ Created INT null,
+ LastLogin INT null,
+ RootInventoryFolderID NVARCHAR(255) null,
+ UserInventoryURI NVARCHAR(255) null,
+ UserAssetURI NVARCHAR(255) null,
+ Image NVARCHAR(255) null,
+ FirstLifeImage NVARCHAR(255) null,
+ AboutText NVARCHAR(255) null,
+ FirstLifeAboutText NVARCHAR(255) null,
+ primary key (ID)
+)
+create table UserAppearances (
+ Owner NVARCHAR(255) not null,
+ BodyItem NVARCHAR(255) null,
+ BodyAsset NVARCHAR(255) null,
+ SkinItem NVARCHAR(255) null,
+ SkinAsset NVARCHAR(255) null,
+ HairItem NVARCHAR(255) null,
+ HairAsset NVARCHAR(255) null,
+ EyesItem NVARCHAR(255) null,
+ EyesAsset NVARCHAR(255) null,
+ ShirtItem NVARCHAR(255) null,
+ ShirtAsset NVARCHAR(255) null,
+ PantsItem NVARCHAR(255) null,
+ PantsAsset NVARCHAR(255) null,
+ ShoesItem NVARCHAR(255) null,
+ ShoesAsset NVARCHAR(255) null,
+ SocksItem NVARCHAR(255) null,
+ SocksAsset NVARCHAR(255) null,
+ JacketItem NVARCHAR(255) null,
+ JacketAsset NVARCHAR(255) null,
+ GlovesItem NVARCHAR(255) null,
+ GlovesAsset NVARCHAR(255) null,
+ UnderShirtItem NVARCHAR(255) null,
+ UnderShirtAsset NVARCHAR(255) null,
+ UnderPantsItem NVARCHAR(255) null,
+ UnderPantsAsset NVARCHAR(255) null,
+ SkirtItem NVARCHAR(255) null,
+ SkirtAsset NVARCHAR(255) null,
+ Texture VARBINARY(8000) null,
+ VisualParams VARBINARY(8000) null,
+ Serial INT null,
+ primary key (Owner)
+)
+
+create index user_surname on UserProfiles (SurName)
+create index user_firstname on UserProfiles (FirstName)
diff --git a/prebuild.xml b/prebuild.xml
index 64c9588..517954b 100644
--- a/prebuild.xml
+++ b/prebuild.xml
@@ -1607,6 +1607,7 @@
+
--
cgit v1.1